2015-05-20 36 views

回答

3

嘗試此查詢:

SELECT ColumnA 
FROM table t 
GROUP BY ColumnA 
HAVING COUNT(DISTINCT ColumnB) >= 2; 

另一種HAVING條款,可能是更有效的是:

HAVING MIN(ColumnB) <> MAX(ColumnB) 
+0

似乎工作得很好。這是我正在處理的SQL小提琴,並將此查詢插入到:[SQL小提琴](http://sqlfiddle.com/#!4/aa6a5/5/0) – clesiemo3

+0

我正在使用ms訪問,並且我得到一個未定義的函數不同的表達錯誤 – JimS

+0

我猜在Access它必須是一個嵌套查詢,計數和獨特的不能在同一個選擇語句。你有什麼主意嗎。我嘗試了一些,但不能過濾這些值,只顯示列b – JimS

0

嘗試此查詢:

SELECT ColumnA 
FROM mytable 
GROUP BY ColumnA 
HAVING COUNT(*) > 1 AND COUNT(DISTINCT ColumnB) = COUNT(*) 
  • 第一斷言在HAVING如果ColumnA值出現一次以上條款是真實的。
  • 如果全部中的第二個謂詞爲真,則ColumnB中的值在ColumnA組中不同。

SQL Fiddle Demo

相關問題