iT邦幫忙

0

SQL語法求救!!

  • 分享至 

  • xImage

欄位1 欄位2 欄位3
香蕉 20塊 台北一街
香蕉 20塊 台北二街
香蕉 20塊 台北三街
桃子 20塊 台北四街
桃子 30塊 台北五街
桃子 30塊 台北六街

請問上面的SQL語法,要如何查詢出,欄位1或欄位2,相同的值大於2的結果

以上面的例子來看,因為是大於2,所以要有3筆一樣值的才會顯示
我要的顯示結果是
香蕉
桃子
20塊

PS:其中的桃子、香蕉、20塊、30塊都是會變的,不是固定值

不是作業!!也不是工作!!只是自已寫的小程式,遇到的問題

圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 個回答

6
一級屠豬士
iT邦大師 1 級 ‧ 2012-08-23 16:03:45
最佳解答
<pre class="c" name="code">CREATE TABLE ithelp0823(
col1 char(6),
col2 char(10),
col3 char(12));

INSERT INTO ithelp0823 VALUES
('香蕉', '20塊', '台北一街'),
('香蕉', '20塊', '台北二街'),
('香蕉', '20塊', '台北三街'),
('桃子', '20塊', '台北四街'),
('桃子', '30塊', '台北五街'),
('桃子', '30塊', '台北六街');

SELECT col1, COUNT(1) AS cnt
FROM ithelp0823
GROUP BY col1
HAVING cnt > 2
UNION ALL
SELECT col2, COUNT(1) AS cnt
FROM ithelp0823
GROUP BY col2
HAVING cnt > 2;

+--------+-----+
| col1   | cnt |
+--------+-----+
| 香蕉 |   3 |
| 桃子 |   3 |
| 20塊  |   4 |
+--------+-----+
ghost234 iT邦新手 4 級 ‧ 2012-08-23 17:00:03 檢舉

測試可以使用
我研究一下
感恩!!

不過,沒想到要用到UNION

我要發表回答

立即登入回答