我遇到了这个问题: 我有三张桌子: users:包含所有用户信息和主键 gallery:包含用户ID和图像ID之间的关系 photoes:包含照片ID和网址(照片存储在服务器上的位置)
这是三个表的一个例子
表名:用户
name_surname ||乔||约翰||
电子邮件|| @乔.. ||约翰@ .. ||
等等...
id(PRIMARY KEY)|| 1 || 2 ||表名:画廊
id || 1 || 1 ||
image_id || 1 || 2 ||
表名:照片
ID || 1 || 2个||
URL || || pht1.jpg || phot2.jpg
问题是我在下面进行了这个查询,但是它返回null并且它应该返回所有url,其中用户id就像登录站点的用户的id
"SELECT gallery.url
FROM photoes
JOIN gallery ON users.id = gallery.id
JOIN photoes ON gallery.image_id = photoes.id"
我认为可能问题出在INNER JOIN查询语法中,有人可以帮助我吗? 谢谢你未来的答案 祝你今天愉快 卢卡
答案 0 :(得分:0)
您正在加入照片[原文如此]而不提及 table 用户。试试这个:
SELECT gallery.url
FROM users
JOIN gallery ON users.id = gallery.id
JOIN photoes ON gallery.image_id = photoes.id
顺便提一下,gallery.id
的更标准名称是gallery.user_id
,以显示其引用的位置。您可能还想修复photos
上的拼写。