繁体   English   中英

SQL左加入仅一行

[英]SQL Left Join Only One Row

通过使用此 SQL 查询:

SELECT pictures.IMAGELINK,userdata.BIRTHDATE,userdata.POSITION,InfiniteLove.USERNAME FROM 
InfiniteLove
LEFT JOIN pictures ON InfiniteLove.USERNAME = pictures.USERNAME
LEFT JOIN userdata ON InfiniteLove.USERNAME = userdata.USERNAME
WHERE NOT InfiniteLove.USERNAME = '".$USERNAME."' AND InfiniteLove.GENDER = 
'M' AND InfiniteLove.SEARCH = 'M' OR InfiniteLove.SEARCH = 'B'

我得到这个结果:

在此处输入图片说明

问题是,我只想要每个用户的一行。 但是当用户有不止一张图片时,它会显示多行。

我能做什么,我只能从每个用户那里得到一行?

谢谢

添加GROUP BY子句

SELECT pictures.IMAGELINK,userdata.BIRTHDATE,userdata.POSITION,InfiniteLove.USERNAME FROM 
InfiniteLove
LEFT JOIN pictures ON InfiniteLove.USERNAME = pictures.USERNAME
LEFT JOIN userdata ON InfiniteLove.USERNAME = userdata.USERNAME
WHERE NOT InfiniteLove.USERNAME = '".$USERNAME."' AND InfiniteLove.GENDER = 
'M' AND InfiniteLove.SEARCH = 'M' OR InfiniteLove.SEARCH = 'B'
GROUP BY InfiniteLove.USERNAME

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM