gpt4 book ai didi

mysql - SQL - 带 JOIN 的 WHERE 子句

转载 作者:行者123 更新时间:2023-11-30 00:33:54 25 4
gpt4 key购买 nike

mysql_query("SELECT a.about,a.user,b.user,b.title,b.article,b.description  
FROM about a
JOIN articles b ON b.user_id=a.user_id
WHERE MATCH(b.title,b.article) AGAINST ('$search')
");

我需要扩展此查询以包含 something like " AND user='$user'"但两者都'a' and 'b'检查表。

我可以做"AND a.user='$user' AND b.user='$user'"但我会再添加 18 张 table ,所以这看起来有点臃肿。

有什么办法可以让事情变得更紧凑吗?

最佳答案

您应该只需要检查一个表上的用户名,而不是同时检查两个表上的用户名,因为使用 user_idINNER JOIN 已经将它们匹配。

说实话,表 b 不应该真正有 user 字段,而应该只有 user_id 字段(这被认为是标准化的)。

INNER JOIN 将仅返回两个表中存在匹配的数据。因此,将表a.user_id 连接到表b.user_id 可确保它们都具有匹配的user_id

关于mysql - SQL - 带 JOIN 的 WHERE 子句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22323497/

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