仅使用一个 SQL 请求在 2 个表中进行选择 [重复]
Posted
技术标签:
【中文标题】仅使用一个 SQL 请求在 2 个表中进行选择 [重复]【英文标题】:Make a selection in 2 tables with only one SQL request [duplicate] 【发布时间】:2012-12-10 04:58:45 【问题描述】:可能重复:How can an SQL query return data from multiple tables
我想要一个关于如何做这件事的好情报: 从我的表 1 和我的表 2 中选择所有内容,其中我的表 2 的 id_article 等于我的表 1 中的 id ...我试试这个:
SELECT * FROM table1 AS n, table2 AS a WHERE n.id = a.id_article
但它没有工作......虽然我不明白整个过程......
感谢您提供任何线索
【问题讨论】:
How can an SQL query return data from multiple tables. 尽管您使用的是旧的连接语法,但您的查询绝对没问题。怎么不工作了? 也许我捕捉结果的方式不好,因为我没有错误。我看到。但是感谢您的提示:) 问题可能出在你的 php 上,因为 SQL 没问题。 【参考方案1】:使用JOIN
语句。
SELECT *
FROM table1
JOIN table2
ON table1.id = table2.id_article
您可以选择在最后添加WHERE
条件
【讨论】:
是的,感谢这个语法,我显然晚了几年^^ 如果这行得通,那么您的原件也应该如此。它们是编写相同查询的两种不同方式,您的只是一种较旧的语法。 是的,但我没有任何结果...虽然没有错误...我正在寻找捕获结果的方法,这显然是错误的【参考方案2】:或者,使用查询的新语法格式ANSI SQL-92
。
SELECT a.*, b.*
FROM table1 a
INNER JOIN table2 b
ON a.ID = b.ID_Article
要全面了解联接,请参阅下面的文章
Visual Representation of SQL Joins【讨论】:
忽略连接语法更可取的事实,我看不出他的查询有什么问题,是吗?只是想知道如果他一开始就没有工作,这是否会更好,或者他的查询中有一个我没有看到的错误...... @BrandonMoore 正如我在上面的评论中所述,查询很好。也许 OP 想要 OUTER JOINs,不确定。但是这个问题太不完整了。 酷,没有看到你的评论,只是想知道我是否遗漏了一些明显的东西:) 嗯,我没有任何结果,也许我的电话不好,因为我没有错误消息。 大声笑,是的,我的第二个表中没有注册项目 ^^。整个过程中的某些东西效果更好:) 感谢大家!以上是关于仅使用一个 SQL 请求在 2 个表中进行选择 [重复]的主要内容,如果未能解决你的问题,请参考以下文章
从表中仅选择几列以使用 C# Web API 上的 Odata Select 查询进行映射