Diskon 80% terbatas! Masukkan kupon "merdeka" di kelas apa saja

logika SQL select table tanggal value tertinggi sebelum tanggal yang ditentukan

aku agak susah menjelaskannya,, jadi langsung ke persoalannya aja yaa,,,

aku punya 2 table seperti ini

image_2022-06-27_215826430.pngimage_2022-06-27_215838497.png

nah,, aku mau bikin kondisi, dimana kalo aku input tanggal, maka yang terpanggil adalah siswa dengan tanggal yang di lewati terdekat (nah kan,, susah dijelasinnya XD )

misal aku input tanggal 14 mei,, maka yang terpanggil kayak gini

image_2022-06-27_220309926.png

mohon bantuannya yaa,,,

avatar yukari06
@yukari06

137 Kontribusi 66 Poin

Diperbarui 3 tahun yang lalu

1 Jawaban:

Jawaban Terpilih

<div>1. Assumi di table tb_jadwal tanggal-nya itu bertype DATETIME, kalau sudah berformat seperti pada contoh; kita perlu merubah jadi DATETIME agar bisa di-filter.<br>2. Table tb_jadwal-nya di filter tb_jadwal.tanggal dengan lebih kecil dari '2022-05-14' lalu di GROUP BY tb_jadwal.id_siswa dengan SELECT tb_jadwal.id_siswa dan MAX(tb_jadwal.tanggal) AS tanggal .<br>3. Dari hasil query step 2,&nbsp;<br> a. di JOIN tb_siswa.id_siswa = query2.id_siswa<br> b. di JOIN tb_jadwal.id_siswa = query2.id_siswa AND tb_jadwal.tanggal = query2.tanggal&nbsp;<br> c. SELECT-nya tb_siswa.nama, tb_jadwal.keterangan dan DATE_FORMAT(query2.tanggal,'%d %M') AS tanggal<br> d. Kalau hasil step3C itu dalam english -- tanggal format-nya, biasanya variable @@lc_time_names (cek pakai SELECT @@lc_time_names;) adalah 'en_US'.<br> e. untuk merubah jadi indonesia sebelum query bisa diganti pakai SET lc_time_names = 'id_ID';</div>

avatar soeleman
@soeleman

120 Kontribusi 147 Poin

Dipost 3 tahun yang lalu

Login untuk ikut Jawaban