mysql group_concat自增主鍵問題

在進行分組時,有時候需要將某一字段的值以逗號或其它符號拼接在一起,可以使用group_concat函數來完成,如果要拼的字段是字符型的,很好辦,用group_concat(字段名 separator ",")就行.
今天在測試程序時,發現有問題,後來發現就是group_concat函數的問題,拼接的字段是主鍵ID,我設爲自動增長,我使用 group_concat(oct(doId) separator ",")發現拼接的主鍵不對勁,如果不使用oct()函數,對於要拼接的字段是數字型的這種情況,產生的結果就會是一個BLOB數據,因此要使用函數來處 理一下,後來我查了查MYSQL手冊,發現oct()函數是返回一個8進制的數,原因找到了就好解決了,於是就再找啊找啊,找到了conv()函數,再轉 換成10進制的數字就OK了,返回的結果正如我意,group_concat(conv(oct(doId),8,10) separator ",") 和
group_concat(conv(conv(doId,10,8),8,10) separator ',') 產生的效果是一樣的

 

轉載

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章