gpt4 book ai didi

mysql - 如何简化这条 SQL 语句?

转载 作者:行者123 更新时间:2023-12-01 00:15:06 25 4
gpt4 key购买 nike

我有两个表,首先,我需要进行一些搜索以获取另一个表的 fk,如下所示...

SELECT `related_table_id` 
FROM `table_a`
WHERE `users_id` = '14'
AND `user_data_status` = 'n'
AND `another_table_name` = 'table_b'

然后,我有很多 related_table_id 作为输出......我需要搜索内容,就像 %keyword%。 所以,我需要像这样查询另一个 SQL:

SELECT * 
FROM table_b
WHERE (`table_b_id`='218' OR `table_b_id`='219' OR `table_b_id`='225')
AND `content` LIKE '%keyword%'

问题是,当我的db越来越大,table_b可能会有很多数据可以从table_a查询,所以sql语句会变得很长很长。我可以将这两个语句合二为一吗?谢谢/

最佳答案

您可以使用 INNER JOIN “匹配”两个或多个表的行。

SELECT table_b.* 
FROM table_b
INNER JOIN table_a
ON table_a.related_table_id = table_b.table_b_id
WHERE table_a.users_id = '14'
AND table_a.user_data_status = 'n'
AND table_a.another_table_name = 'table_b'
AND table_b.content LIKE '%keyword%'

关于mysql - 如何简化这条 SQL 语句?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6008983/

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