Table A
LogID UserId Date
00001 0001 05-01
00002 0002 05-02
00003 0003 05-02
00004 0004 05-02
00005 0003 05-03
00006 0001 05-03
00007 0002 05-03
Table B
UserId Status
0001 Active
0002 Active
0003 Active
0004 Inactive
Table C
UserId Province
0001 Yunnan
0002 Fujian
0003 Fujian
0004 Beijing
Di atas adalah tiga jadual dalam pangkalan data, berkaitan melalui ID Pengguna. Jadual A ialah jadual maklumat log masuk pengguna dengan LogID sebagai kunci utama Jadual B menyimpan status aktif pengguna, dan Jadual C menyimpan maklumat lokasi geografi pengguna. Sekarang saya ingin mendapatkan jumlah kumulatif bilangan negeri lain berdasarkan kumpulan tarikh dalam jadual A. Hasil pulangan yang dijangkakan ialah:
Date Active Inactive Yunnan Fujian Beijing
05-01 1 0 1 0 0
05-02 2 1 0 2 1
05-03 3 0 1 2 0
Bolehkah ia dilaksanakan dengan pernyataan SQL?
Logik perniagaan jadual ini sangat longgar, jadi saya tidak akan menulisnya untuk anda dengan cara yang longgar hanya menganggap hubungan jadual ABC anda sebagai banyak-dengan-satu: