我正在开发一个示例Windowsform应用程序,当用户在数据网格视图的一行中双击时,该应用程序将打印报告。
对查询ecc的一些问题进行故障排除后,我在一个奇怪的from
语句中运行,这是我从未见过的。
语句下面:
SELECT some_tables
FROM table1 table2 inner join table3 table4 on table2.id = table4.id
这种情况是我使用SQL事件探查器捕获的一个有效查询的结果,我需要这样做,因为上一个查询没有检索正确的数据。
我已经在互联网上搜索了该声明,但没有成功,因此详细说明了该怎么做?
答案 0 :(得分:2)
编辑:我刚刚看到@Larnu说了与我相同的话,她是正确的^^
这里发生的是使用alias
,you can read about them here
FROM table1 table2 inner join table3 table4 on table2.id = table4.id
使用别名,其中table2
是table1
的别名,而table4
是table3
的别名。
您可以建立以下关联:
table2 = table1
table4 = table3
这样,该语句也可以写成:
FROM table1 inner join table3 on table1.id = table3.id
答案 1 :(得分:1)
table2
和table4
是表table1
和table3
的别名(通常是较短的名称)。
inner join
意味着两个表的记录是成对组合的,其中table2.id
必须与table4.id
匹配。
示例:
table1
id description
-- -----------
1 Apple
2 Orange
3 Pear
table2
id name
-- -----
1 Peter
1 Sue
2 Marc
查询
SELECT
a.id, a.description, b.name
FROM
table1 a
INNER JOIN table2 b
ON a.id = b.id
结果
id description name
-- ----------- ----
1 Apple Peter
1 Apple Sue
2 Orange Marc