Rumah > pangkalan data > tutorial mysql > Bagaimana untuk Mengira Bilangan Hari Selasa Antara Dua Tarikh dalam TSQL?

Bagaimana untuk Mengira Bilangan Hari Selasa Antara Dua Tarikh dalam TSQL?

Barbara Streisand
Lepaskan: 2024-10-28 20:45:30
asal
822 orang telah melayarinya

How to Calculate the Number of Tuesdays Between Two Dates in TSQL?

Mengira Bilangan Selasa Antara Dua Tarikh dalam TSQL

Menentukan bilangan Selasa antara dua tarikh ialah cabaran biasa dalam pengaturcaraan TSQL. Satu pendekatan yang cekap digariskan oleh t-clausen.dk:

Untuk mengira kejadian setiap hari bekerja:

<code class="tsql">declare @from datetime = '3/1/2013' 
declare @to datetime  = '3/31/2013' 


select 
 datediff(day, -7, @to)/7-datediff(day, -6, @from)/7 AS MON,
 datediff(day, -6, @to)/7-datediff(day, -5, @from)/7 AS TUE,
 datediff(day, -5, @to)/7-datediff(day, -4, @from)/7 AS WED,
 datediff(day, -4, @to)/7-datediff(day, -3, @from)/7 AS THU,
 datediff(day, -3, @to)/7-datediff(day, -2, @from)/7 AS FRI,
 datediff(day, -2, @to)/7-datediff(day, -1, @from)/7 AS SAT,
 datediff(day, -1, @to)/7-datediff(day, 0, @from)/7 AS SUN</code>
Salin selepas log masuk

Pertanyaan ini mengembalikan bilangan kejadian setiap hari dalam seminggu dalam julat tarikh yang ditentukan. Pengiraan adalah berdasarkan prinsip berikut:

  • Fungsi datediff mengira perbezaan antara dua tarikh dalam hari.
  • Ungkapan -7 mewakili hari Ahad sebelum tarikh mula.
  • Ungkapan -6 mewakili hari Isnin sebelum tarikh mula.
  • Pembahagian mengikut 7 kumpulan hari mengikut minggu.
  • Penolakan bilangan hari dari tarikh mula sehingga hingga hari Isnin sebelum tarikh mula mengira bilangan minggu antara tarikh mula dan tamat.
  • Penolakan bilangan hari dari tarikh tamat sehingga hari dalam minggu sebelum tarikh tamat mengira nombor hari yang tinggal dalam minggu lepas.

Dengan menggunakan kaedah ini, anda boleh menentukan bilangan hari Selasa atau mana-mana hari lain dalam seminggu dengan mudah dalam julat tarikh tertentu.

Atas ialah kandungan terperinci Bagaimana untuk Mengira Bilangan Hari Selasa Antara Dua Tarikh dalam TSQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan