gpt4 book ai didi

MySQL 多表多行

转载 作者:行者123 更新时间:2023-11-29 15:08:50 26 4
gpt4 key购买 nike

假设我在 MySQL 中有一个名为articles的表,其中有一列名为article_id。我还有另一个名为 links 的表,其中有两列,分别为article_id 和 link。

每篇文章都可以附加多个链接,假设article_id=2有两个链接:

articles:
article_id | text
-----------+------
2 | blah

links:
article_id | url
-----------+------
2 | test1
2 | test2

现在我想要一个查询,它可以以某种方式从文章中选择文本并从链接中选择 URL,其中在一个查询中可以选择article_id=2 吗?

最佳答案

您需要JOIN这些表一起使用article_id。有几种不同类型的连接 - 如果文章总是有链接,您可以使用 INNER JOIN - 如果可能没有,那么您可以使用 LEFT JOIN,在这种情况下url 将为 NULL

SELECT a.text, l.url
FROM articles AS a
INNER JOIN links AS l ON a.article_id = l.article_id
WHERE a.article_id = 2

您应该注意,这将为每个网址返回一行,并为每一行重复文章文本 - 在您的应用程序中,您可以只从第一行获取文本。如果您的文本很大并且每篇文章都有很多链接,那么执行两次查询可能会更有效 - 您必须对其进行分析才能找到答案。

关于MySQL 多表多行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1398411/

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