Question

I have a query which uses the GROUP_CONCAT of mysql on an integer field.
I am using PHPMYADMIN to develop this query. My problem that instead of showing 1,2 which is the result of the concatenated field, I get [BLOB - 3B].

Query is

SELECT rec_id,GROUP_CONCAT(user_id)
FROM t1
GROUP BY rec_id

(both fields are unsigned int, both are not unique)

What should I add to see the actual results?

Was it helpful?

Solution 4

Just above the query result (to the left) you will see +options. Press it and mark

Show BLOB contents

OTHER TIPS

Looks as though GROUP_CONCAT expects that value to be a string. I just ran into the same problem. Solved it by converting the int column to a string like so:

SELECT rec_id,GROUP_CONCAT(CONVERT(user_id, CHAR(8)))
FROM t1
GROUP BY rec_id

Figured I'd share in case you were still having an issue with this.

According to the MySQL documentation, CAST(expr AS type) is standard SQL and should thus be perferred. Also, you may omit the string length. Therefore, I’d suggest the following:

SELECT rec_id, GROUP_CONCAT(CAST(user_id AS CHAR))
FROM t1
GROUP BY rec_id

For me, this helped (found it in this blog post):

In my case the parameter to GROUP_CONCAT was string but the function still resulted in a BLOB, but converting the result of the GROUP_CONCAT worked.

CONVERT(GROUP_CONCAT(user_id) USING 'utf8')

You can do this:

set session group_concat_max_len = 512;

If group_concat_max_len is more than 512 the query will return byte[]. But you can pass to a string.

System.Text.Encoding.Default.GetString((byte[])DataTable.Rows[0][0]);

If you have access to the config.inc.php file in the phpMyAdmin directory, then I think the best solution is to change this line:

$cfg['Servers'][$i]['extension'] = 'mysql';

to this:

$cfg['Servers'][$i]['extension'] = 'mysqli';

If you have the mysqli extension available, use it. It is more secure, a bit more optimized, and it handles the BLOB type of utf-8 better by default. Your [BLOB] entries should start showing up as their values without having to add in any other special configuration options.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top