2010-05-06 87 views
0

Im在Excel 2007中停留,運行查詢,它工作,直到我想添加包含「字段2」的第二行。Excel和SQL,通過幫助排序

Select "Site Updates"."Posted By", "Site Uploaded"."Site Upload Date" 
From site_info.dbo."Site Updates" 
Where ("Site Updates"."Posted By") AND "Site Uploaded"."Site Upload Date">={ts '2010-05-01 00:00:00'}), ("Site Location"='Chicago') 
Union all 
Select "Site Updates"."Posted By", "Site Uploaded"."Site Upload Date" 
From site_info.dbo."Site Updates" 
Where ("Site Updates"."Posted By") AND "Site Uploaded"."Site Upload Date">={ts '2010-05-01 00:00:00'}), ("Site Location"='Denver') 
Order By "Site Location" ASC; 

基本上我想要的位置的2個不同的細胞,例如

name - Chicago - denver 
user1 - 100 - 20 
user2 - 34 - 1002 

眼下一些奇怪的原因,它結合它想:

name - chicago 
user1 - 120 
user2 - 1036 

請注意更新至2010年公測這一點對我來說不是一個可行的選擇。任何和所有對我有幫助的輸入都會非常受歡迎。我已經閱讀了http://www.techonthenet.com/sql/order_by.php,但是在這個問題上它沒有得到很大的幫助。如果你有另一個SQL資源供你試圖弄溼腳步的人使用,我會非常喜歡它。

如果它可以幫助所有的信息在同一張桌子上。

+0

我不明白你的意思是「它的結合」。在SQL查詢中,您要求輸入2個字段:「發佈者」和「網站上傳日期」,您似乎在說要讓它返回3件事情?什麼領域到底是「結合」? – dendarii 2010-05-10 09:09:54

回答

0

如果您要返回的是「發佈者」和「網站位置」的網站更新次數,那麼您可以嘗試如下所示。

SELECT "Posted By", "Site Location", COUNT(*) AS "TotalUpdates" 
FROM "Site Updates" 
WHERE "Site Updated" >= '2010-05-01 00:00:00' 
GROUP BY "Posted By", "Site Location" 
0

我不確定你在找什麼 - 表達這種關係的標準方式是自上而下,而不是左 - 右,但也許這不是重點。

普通的SQL會

SELECT col1, col2, ... 
FROM table 
WHERE xydate > '...' 
AND ("Site Location"='Chicago' 
OR "Site Location"='Denver') 
ORDER BY ... 

AND ("Site Location" IN ('Chicago', 'Denver')) 

我不知道爲什麼你的款項,我不知道,你可以使用SQL在Excel中,但我可以重新編寫postgresql指南http://developer.postgresql.org/pgdocs/postgres/index.html - 但不幸的是,sql-dialetcs從db到db不同 - 可能它對您沒有幫助。