gpt4 book ai didi

php - 联合查询或更好的选择

转载 作者:行者123 更新时间:2023-11-29 08:38:52 25 4
gpt4 key购买 nike

我有以下三个表,我想通过userid从中提取数据,这是为它们提供关系的一个关键字段。我还想按时间戳顺序提取数据,下面是表架构的示例,以及我对不起作用的联合查询的情况。

Table1: userid, event_id, event_name, timestamp
Table2: id_user, comment, timestamp
Table3: user_id, photo, timestamp
<小时/>
 $result5 = mysql_query 
("(SELECT event_name, timestamp FROM table1 WHERE userid = '25')
UNION ALL
(SELECT comment,timestamp FROM table2 WHERE id_user = '25')
UNION ALL
(SELECT photo,timestamp FROM table3 WHERE user_id ='25')
ORDER BY timestamp")
or die(mysql_error());

最佳答案

考虑到 event_namecommentphoto 不相关,您不应使用任何类型的 UNION.这些表的共同点是user_id。您正在寻找JOIN。像这样的事情:

SELECT a.event_name, a.timestamp, b.comment, b.timestamp, c.photo, c.timestamp
FROM table1 a
INNER JOIN table2 b ON b.id_user = a.userid
INNER JOIN table3 c ON c.user_id = a.userid
WHERE a.userid = '25'

关于php - 联合查询或更好的选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14418109/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com