2013-05-31 90 views
0

我試圖用DISTINCT字段返回行,但SELECT是不同的字段。它背後的原因是因爲這個查詢在UNION的查詢之間。所以我需要輸出以匹配其他查詢輸出的內容。很難解釋,這裏有一個例子:所以基本上我想要的輸出爲2列,以便所有的UNION'ed查詢將有一個不錯的輸出試圖從表中選擇某些行的值DISTINCT

UNION--- 

SELECT * FROM 
(SELECT DISTINCT Value1 || Value2 || Value3 as DESCRIPTION, Value4 
FROM TABLE 
WHERE Value5 = <some distinct value>) 
WHERE Value6 = 1 

---UNION 

。我想我只是不知道使WHERE子句使用不同值的語法。

+0

也許你需要GROUP BY呢? – sashkello

+2

查詢有什麼問題?這可能有助於我們理解如何使它變得更好。 –

回答

0

您的查詢在子查詢之外沒有value6。您需要將其表達爲:

SELECT * 
FROM (SELECT DISTINCT Value1 || Value2 || Value3 as DESCRIPTION, Value4 
     FROM TABLE 
     WHERE Value5 = <some distinct value> and 
      Value6 = 1 
    ) t 

不過,我不知道這是否有助於您的問題。

順便說一下,是否有一種格式將from放在行尾?我不時看到這一點,只是不明白。他們的人類真的喜歡這個嗎?