3

私はこのデータを持っています

DeveloperId   Date             remark
--------------------------------------
1             02/01/2013        Google
1             02/02/2013        MSN
1             02/03/2013        Google
1             02/02/2013        MSN
1             02/01/2013        Yahoo
2             02/01/2013        Google
2             02/02/2013        Yahoo
2             02/03/2013        Google
2             02/01/2013        Google

Google と Msn と yahoo の一般的な日付を動的に見つける方法は?

そのようなクエリをレポートに入れたいと思います。

4

5 に答える 5

2
-- Query for dates that have all types of remarks
SELECT
  Date
FROM
  data
GROUP BY 
  Date
HAVING COUNT(DISTINCT remark) = (
  SELECT COUNT(DISTINCT remark)
  FROM data
);

または、それが要件ではない場合...

-- Query for dates that have more than one remark.
SELECT
  Date
FROM
  data
GROUP BY 
  Date
HAVING COUNT(DISTINCT remark) > 1;

SQLフィドル

于 2013-02-19T17:55:33.953 に答える
1

これを試して:

with temp as
(
    SELECT Date, Remark
    From MyTable
    GROUP BY Date, Remark
)
SELECT Date
FROM temp
GROUP BY Date
Having COUNT(*) > 1

ここでフィドルを操作する:http ://sqlfiddle.com/#!3 / d41d8 / 9105

于 2013-02-19T17:48:18.463 に答える
1

3 つの異なる発言の共通の日付:

SELECT t1.DATE
FROM TABLE T1
INNER JOIN TABLE T2
ON t1.DATE = t2.DATE
AND Remark IN ('google', 'yahoo', 'msn')
GROUP BY t1.DATE, t1.REMARK
HAVING COUNT(t1.DATE) = 3;
于 2013-02-19T17:55:53.883 に答える
0
Select Date from data
group by remark, Date  
于 2013-02-19T17:47:27.480 に答える
0

試す:

select "Date"
from myTable
group by "Date"
where remark in ('Google','MSN','Yahoo')
having count(distinct remark) = 3
于 2013-02-19T17:58:17.140 に答える