求展示数据查询
求显示数据查询
先看表结构
现在要查出所有用户的资料以及用户上传的图片url,可是我查出来的时候,用户这块重复了,也就是有pic里有多少条记录用户就有多少记录,但我现在只想让用户出现一次,而url有多少出多少,这个语句要怎么写?只用一条,谢谢。
------解决方案--------------------
url以什么格式出现?
先看表结构
- SQL code
CREATE TABLE `usre` ( `ID` int(11) NOT NULL AUTO_INCREMENT , `name` varchar(15) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL , `age` int(3) NULL DEFAULT NULL , PRIMARY KEY (`ID`) ) ENGINE=MyISAM DEFAULT CHARACTER SET=utf8 COLLATE=utf8_general_ci AUTO_INCREMENT=1 CHECKSUM=0 ROW_FORMAT=DYNAMIC DELAY_KEY_WRITE=0 ;
- SQL code
CREATE TABLE `pic` ( `pid` int(10) NOT NULL AUTO_INCREMENT , `id` int(15) NULL DEFAULT NULL , `url` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL , PRIMARY KEY (`pid`) ) ENGINE=MyISAM DEFAULT CHARACTER SET=utf8 COLLATE=utf8_general_ci COMMENT='与user表id对应' AUTO_INCREMENT=1 CHECKSUM=0 ROW_FORMAT=DYNAMIC DELAY_KEY_WRITE=0 ;
现在要查出所有用户的资料以及用户上传的图片url,可是我查出来的时候,用户这块重复了,也就是有pic里有多少条记录用户就有多少记录,但我现在只想让用户出现一次,而url有多少出多少,这个语句要怎么写?只用一条,谢谢。
------解决方案--------------------
url以什么格式出现?
- SQL code
SELECT usre.id,usre.name,usre.age,GROUP_CONCAT(pic.url) AS url FROM usre LEFT JOIN pic ON usre.id=pic.id GROUP BY usre.id,usre.name,usre.age
------解决方案--------------------
楼上的可以
------解决方案--------------------
只能:GROUP_CONCAT了。不然要看你怎么应用了。
------解决方案--------------------
试图真心没怎么用过,坐等高手指教了。。
------解决方案--------------------
为什么不在你的PHP代码中处理?
------解决方案--------------------
在****上面还是学到了不少。