2017-06-27 32 views
0

我有數據是這樣的:SQL查詢來一天,但與其他條件

| visitor_id | time  | my_flag | 
| 1   | 01-01-2017 | 1  | 
| 2   | 01-01-2017 | 1  | 
| 1   | 01-02-2017 | 2  | 
| 3   | 01-02-2017 | 2  | 

等等

我希望將所有遊客在一天內,但基於一個標誌。該標誌可以有兩個值,1或2。所以,我需要這樣的東西

| 12 | 01-01-2017 | 1 | 
| 10 | 01-01-2017 | 2 | 
| 34 | 01-02-2017 | 1 | 

select v.visitor_id v.time, v.flag 
from my_table as v 
group by DAY(v.time) having flag=1; 

但我無法弄清楚如何添加多個條件(標誌= 1標誌= 2)?任何指針?

+0

可以顯示輸入呢? –

+1

你有沒有試過只是做一個多組?恩。按日期分組(v.time),v.flag –

+0

@vkp添加樣本輸入。 Joe.Ingalls謝謝,我沒有嘗試過。 :)讓我試試看。 – noMAD

回答

1

嘗試這樣的事情

select v.visitor_id v.time, v.flag 
from my_table as v 
where v.flag in (1,2) 
group by DAY(v.time), v.flag 
1
SELECT v.time, 
     v.flag, 
     COUNT(v.visitor_id) 
FROM my_table as v 
GROUP BY v.time, 
     v.flag;`