我想知道是否可以從一個表中選擇某些列,並從另一個表中選擇與第一個表中的非導入列相關的另一列。我必須從訪問中獲取這些數據,並且不知道這是否可以使用Access或SQL。來自兩個表的SQL語句
回答
假設下面的表結構:
CREATE TABLE tbl_1 (
pk_1 int,
field_1 varchar(25),
field_2 varchar(25)
);
CREATE TABLE tbl_2 (
pk_2 int,
fk_1 int,
field_3 varchar(25),
field_4 varchar(25)
);
您可以使用下列內容:
SELECT t1.field_1, t2.field_3
FROM tbl_1 t1
INNER JOIN tbl_2 t2 ON t1.pk_1 = t2.fk_1
WHERE t2.field_3 = "Some String"
至於比爾的帖子,有兩種方法來創建SQL查詢中使用JOIN的:
隱式 - 聯接是使用 創建的,該段的WHERE子句使用多個表ERY在被指定的FROM子句
顯 - 使用 適當類型JOIN子句的,創建加入 (INNER,LEFT,RIGHT,FULL)
始終建議您使用顯式JOIN語法作爲隱式聯接可能會導致問題一旦查詢變得更加複雜。例如,如果稍後向已在FROM子句中引用多個表的已使用隱式連接的查詢添加顯式連接,則FROM子句中引用的第一個表對於顯式連接表將不可見。
主鍵和外鍵不是嚴格必要的。 – 2008-11-11 13:20:33
但建議(至少如果你問我;-) – okoman 2008-11-11 13:26:50
當然,我可以同意這一點。但你的答案中確實表示「需要」。 – 2008-11-11 13:53:15
我不是100%確定我理解你的問題。
以下爲真:
您的第一張表是從其他地方導入的。 您只導入了一些列。 你想建立一個查詢引用一個你還沒有導入的列。
如果這是真的,這是不可能的。至於涉及非導入列的Access查詢引擎不存在。
爲什麼不只是導入它們呢?
但主鍵使查詢效率更高
- 1. 來自兩個表的SQL SELECT語句
- 2. 來自2個表的SQL select語句
- 3. 合併兩個SQL SELECT語句返回來自兩個不同表的值
- 4. 涉及兩個表的SQL語句
- 5. 兩個表的sql更新語句
- 6. SQL語句從兩個SELECT語句
- 7. 來自多個表的SQL語句組數據在一個下
- 8. sql語句連接兩個表
- 9. SQL語句 - 更新兩個表
- 10. sql語句連接兩個表
- 11. SQL語句 - 比較兩個表列
- 12. 從兩個表中篩選SQL語句
- 13. SQL SELECT從兩個表(友誼)語句
- 14. 從兩個表中選擇SQL語句
- 15. 兩個php Sql語句
- 16. SQL加入兩個語句
- 17. 加入兩個SQL語句
- 18. 加入兩個SQL語句
- 19. 來自另一個表循環的SQL插入語句
- 20. 來自多個表的ORACLE SQL SELECT語句
- 21. Oracle SQL - 來自兩條select語句的最大值
- 22. 顯示來自兩個SQL表的數據語法解釋
- 23. 來自select語句的LINQ-to-SQL類
- 24. 來自select語句的SQL更新
- 25. Elasticsearch來自SQL語句的DSL查詢
- 26. Elasticsearch來自SQL語句的DSL查詢
- 27. 來自select語句的SQL插入
- 28. 來自select的SQL更新語句
- 29. 來自pyodbc的sql打印語句
- 30. 構建來自Ruby Hash的SQL語句
內部加入將只選擇在兩個表中都匹配的記錄。在某些情況下,左連接可能更好(http://www.devshed.com/c/a/MySQL/Understanding-SQL-Joins/) – Fionnuala 2008-11-11 13:40:26