--表結(jié)構(gòu)設(shè)計有誤,其實還需要path字段?在插入數(shù)據(jù)的時候拼接id和pid存入path中即可
成都創(chuàng)新互聯(lián)是一家專業(yè)提供撫州企業(yè)網(wǎng)站建設(shè),專注與網(wǎng)站設(shè)計、成都網(wǎng)站建設(shè)、H5技術(shù)、小程序制作等業(yè)務(wù)。10年已為撫州眾多企業(yè)、政府機構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)網(wǎng)站設(shè)計公司優(yōu)惠進行中。
CREATE?TABLE?`gtp`?(
`id`?int(11)?NOT?NULL?AUTO_INCREMENT,
`name`?varchar(255)?DEFAULT?NULL,
`pid`?int(11)?DEFAULT?NULL,
`path`?varchar(255)?DEFAULT?NULL,
`status`?varchar(255)?DEFAULT?NULL,
PRIMARY?KEY?(`id`)
)?ENGINE=InnoDB?AUTO_INCREMENT=16?DEFAULT?CHARSET=utf8;
--
INSERT?INTO?`gtp`?VALUES?('1',?'男裝',?'0',?'0',?'1');
INSERT?INTO?`gtp`?VALUES?('2',?'女裝',?'0',?'0',?'1');
INSERT?INTO?`gtp`?VALUES?('13',?'上衣',?'1',?'0,1',?'1');
INSERT?INTO?`gtp`?VALUES?('15',?'短袖',?'13',?'0,1,13',?'0');
1、首先查詢表前綴為c2c_的數(shù)據(jù)表。
2、其次根據(jù)相同值,拼接指定字段值。
3、最后選擇將整個字段添加索引,或者只將前一部分的字符串加上索引即可。
經(jīng)過對你問題的分析,有兩種方式可以解決。
第一種方式:使用mysql的存儲過程,判斷哪一個表的字段內(nèi)容全是數(shù)字,放在前面。
第二種方式:使用java或其他動態(tài)語言,進行判斷并組裝。
另一種思路,就是把三個表的數(shù)據(jù)統(tǒng)一一下。
如果是合并字段應(yīng)該使用concat函數(shù),比如:select
id,concat(name,age)
as
info
from
user
而樓上說的group_concat是指將本來多行的數(shù)據(jù)合并到一行,默認是逗號隔開,間隔符可以指定。