insert into px_data_test_temp.temp_stu_attendance_tb
(date_col, stu_no, is_attendence)
values
('2019-11-01','stu-00001','上課'),
('2019-11-02','stu-00001','上課'),
('2019-11-03','stu-00001','缺勤'),
('2019-11-04','stu-00001','上課'),
('2019-11-05','stu-00001','上課'),
('2019-11-06','stu-00001','上課'),
('2019-11-07','stu-00001','上課'),
('2019-11-08','stu-00001','上課'),
('2019-11-09','stu-00001','缺勤'),
('2019-11-10','stu-00001','缺勤'),
('2019-11-11','stu-00001','上課'),
('2019-11-12','stu-00001','上課'),
('2019-11-13','stu-00001','上課'),
('2019-11-14','stu-00001','上課'),
('2019-11-15','stu-00001','缺勤'),
('2019-11-16','stu-00001','缺勤'),
('2019-11-17','stu-00001','缺勤'),
('2019-11-18','stu-00001','上課'),
('2019-11-19','stu-00001','上課'),
('2019-11-20','stu-00001','上課'),
('2019-11-01','stu-00002','上課'),
('2019-11-02','stu-00002','缺勤'),
('2019-11-03','stu-00002','缺勤'),
('2019-11-04','stu-00002','上課'),
('2019-11-05','stu-00002','上課'),
('2019-11-06','stu-00002','上課'),
('2019-11-07','stu-00002','上課'),
('2019-11-08','stu-00002','上課'),
('2019-11-09','stu-00002','缺勤'),
('2019-11-10','stu-00002','缺勤'),
('2019-11-11','stu-00002','上課'),
('2019-11-12','stu-00002','上課'),
('2019-11-13','stu-00002','上課'),
('2019-11-14','stu-00002','上課'),
('2019-11-15','stu-00002','上課'),
('2019-11-16','stu-00002','缺勤'),
('2019-11-17','stu-00002','缺勤'),
('2019-11-18','stu-00002','上課'),
('2019-11-19','stu-00002','上課'),
('2019-11-20','stu-00002','上課');
select
date_col,
count(*) as total,
row_number() over (order by date_col) as rn
from temp_stu_attendance_tb
where is_attendence = '上課'
group by date_col;
date_col total rn
2019-11-01 2 1
2019-11-02 1 2
2019-11-04 2 3
2019-11-05 2 4
2019-11-06 2 5
2019-11-07 2 6
2019-11-08 2 7
2019-11-11 2 8
2019-11-12 2 9
2019-11-13 2 10
2019-11-14 2 11
2019-11-15 1 12
2019-11-18 2 13
2019-11-19 2 14
2019-11-20 2 15
1、視窗函式是寫在select子句中的,而視窗函式開窗範圍是基於後面的所有查詢結果。對每行結果進行開窗操作,然後每行都在這個視窗範圍內執行聚合函式進行統計。統計結果作為這一行的乙個字段值。所以本案例中,先group by 之後再rank()
2、視窗函式與group by一起使用並不衝突。視窗函式也是基於整個group by後的查詢結果(而不是基於每組組內的查詢結果)。
關於group by 和max函式一起使用的坑
前幾天去參加一場面試,面試過程中有被問到乙個sql語句的問題,很遺憾沒有回答上來,結果一面直接掛 問完這個問題後,當我聽到面試官對我說 你有什麼想問我的嗎?我的內心一片涼涼 其實面試官問的問題聽起來很簡單,一張劇目演出表,表中有 劇目id,劇目名稱,演出單位,票房 問 查詢出每個演出單位票房最高的劇...
願使 陪你一起老
有人說,人生的路上,最浪漫的事,一種是相濡以沫,一種是相忘於江湖。相守 相伴都是幸福與甜蜜的。找乙個愛的人,相守一生,看歲月輪迴,青絲白髮,一起到老。但有一種相守,並沒有牽手的相依偎,只是隔著一段紅塵的距離,默默地凝望 默默地祝福。陪你一起老,無論是否相守,我願在時光的清淺裡,將往事收藏,只要你好,...
函式模板和函式引數在一起
include using namespace std 函式模板不允許自動型別轉換 普通函式能夠進行自動型別轉換 1 函式模板可以像普通函式一樣被過載 2 函式模板和普通函式的型別都相同時候,c 編譯器會優先考慮呼叫普通函式 3 如果函式模板可以產生乙個更好的匹配,那麼選擇模板 4 z int ma...