2010-05-10 60 views
0

我想在Microsoft Query中做一個簡單的子查詢連接,但我無法弄清楚語法。我也找不到任何文檔的語法。什麼是子查詢的Microsoft Query語法?

如何在Microsoft Query中編寫以下查詢?

SELECT * 
FROM (
    SELECT Col1, Col2 
    FROM `C:\Book1.xlsx`.`Sheet1$` 
) AS a 
JOIN (
    SELECT Col1, Col3 
    FROM `C:\Book1.xlsx`.`Sheet1$` 
) AS b 
ON a.Col1 = b.Col1 

是否有Microsoft Query的官方文檔?

謝謝!

回答

1
SELECT * 
    FROM (SELECT ID, Company FROM (`Sheet1$`)) AS a 
    INNER JOIN 
    (SELECT ID, Name FROM `Sheet1$`) AS b 
    ON a.ID = b.ID; 

這對我有用。它看起來像唯一的區別是內部聯接與聯接。我的字段是ID,公司,名稱,按Col1,Col2,Col3的順序排列。

+0

迪克,我能夠讓你的查詢工作複製逐字。有一些字符導致MS Query出現問題,但它不是「INNER JOIN」。我一直在收到「Could not add table'('。」我似乎無法弄清楚我在做什麼是在語法規則外。謝謝! – Kuyenda 2010-05-10 20:51:49

+0

我的查詢中有一些拼寫錯誤,我修正了它們,現在它起作用了不幸的是,它看起來像Excel一次只能在MS Query中處理一個連接。 – Kuyenda 2010-05-10 22:13:16

+0

顯然,Microsoft Query能夠做多個INNER JOIN,但我還沒有弄清楚語法。http://support.microsoft的.com/KB/115340 – Kuyenda 2010-05-10 22:31:26

0

按照Excel查詢嚮導創建/編輯查詢。

您可以從Excel菜單訪問它:數據 - >導入外部數據 - >導入數據

同樣可以通過這個鏈接 http://www.exceluser.com/explore/msquery1_1.htm

+0

謝謝volody,我想了很多。我正在編輯來自Microsoft Query中的查詢。我設置的查詢過於完整,無法在查詢生成器GUI中顯示。 – Kuyenda 2010-05-10 16:40:55

+0

我明白了,我不知道你的要求,但作爲一個建議,可能你必須找到替代解決方案。像將數據導入記錄集,然後運行標準的sql語句。 – volody 2010-05-10 16:46:59