SQL 循环查询语法(经典ASP)
SQL query syntax for loop (Classic ASP)
我有 4 个表和以下 SQL 查询:
SELECT * FROM dbo.Synola, dbo.Stores, dbo.Fpa, dbo.Nomismata
WHERE
dbo.Stores.Store_id = dbo.Synola.Store_id
AND
dbo.Stores.fpa_id = dbo.Fpa.fpa_id
AND
dbo.Stores.nomisma_id = dbo.Nomismata.nomisma_id
以上工作正常,没有错误。
我的问题是,当我尝试 循环 上述查询时:
目前,在我的商店 TABLE 中,我只有 2 家商店,我希望在循环中获得结果 ONLY 2条记录。我的 2 家商店的 2 条记录。但不幸的是,我收到了超过 2 条记录。
在循环中仅接收我的 2 家商店 的结果的正确查询语法是什么?
这应该只检索所有 table 中可用的数据。因此,如果与主 Stores
table 不匹配,则结果不会显示。
SELECT *
FROM Stores s
JOIN Synola sy ON sy.Store_id = s.Store_id
JOIN Fpa f ON f.fpa_id = s.fpa_id
JOIN Nomismata n ON n.nomisma_id = s.nomisma_id
如果您因为其他 table 中有更多匹配项而获得更多行,那么您需要考虑添加更多 WHERE
条件或使用另一种类型的 JOIN
。
更多信息:https://www.codeproject.com/Articles/33052/Visual-Representation-of-SQL-Joins
编辑:查看您在 JOIN
上获得多个匹配项的位置:
SELECT s.Store_id "Store_id from Store",
,sy.Store_id "Store_id from Synola"
,s.fpa_id "fpa_id from Store"
,f.fpa_id "fpa_id from Fpa"
,s.nonisma_id "nomisma_id from Store"
,n.nonisma_id "nomisma_id from Nomismata"
FROM Stores s
JOIN Synola sy ON sy.Store_id = s.Store_id
JOIN Fpa f ON f.fpa_id = s.fpa_id
JOIN Nomismata n ON n.nomisma_id = s.nomisma_id
SELECT * FROM dbo.Synola, dbo.Stores, dbo.Fpa, dbo.Nomismata
WHERE
dbo.Stores.Store_id = dbo.Synola.Store_id
AND
dbo.Stores.fpa_id = dbo.Fpa.fpa_id
AND
dbo.Stores.nomisma_id = dbo.Nomismata.nomisma_id
以上工作正常,没有错误。
我的问题是,当我尝试 循环 上述查询时:
目前,在我的商店 TABLE 中,我只有 2 家商店,我希望在循环中获得结果 ONLY 2条记录。我的 2 家商店的 2 条记录。但不幸的是,我收到了超过 2 条记录。
在循环中仅接收我的 2 家商店 的结果的正确查询语法是什么?
这应该只检索所有 table 中可用的数据。因此,如果与主 Stores
table 不匹配,则结果不会显示。
SELECT *
FROM Stores s
JOIN Synola sy ON sy.Store_id = s.Store_id
JOIN Fpa f ON f.fpa_id = s.fpa_id
JOIN Nomismata n ON n.nomisma_id = s.nomisma_id
如果您因为其他 table 中有更多匹配项而获得更多行,那么您需要考虑添加更多 WHERE
条件或使用另一种类型的 JOIN
。
更多信息:https://www.codeproject.com/Articles/33052/Visual-Representation-of-SQL-Joins
编辑:查看您在 JOIN
上获得多个匹配项的位置:
SELECT s.Store_id "Store_id from Store",
,sy.Store_id "Store_id from Synola"
,s.fpa_id "fpa_id from Store"
,f.fpa_id "fpa_id from Fpa"
,s.nonisma_id "nomisma_id from Store"
,n.nonisma_id "nomisma_id from Nomismata"
FROM Stores s
JOIN Synola sy ON sy.Store_id = s.Store_id
JOIN Fpa f ON f.fpa_id = s.fpa_id
JOIN Nomismata n ON n.nomisma_id = s.nomisma_id