SQL Select inregistrari intre luni si ani
Discutii despre script-uri si coduri PHP-MySQL, precum si lucru cu XML in PHP.
-
sterica
- Mesaje:285
SQL Select inregistrari intre luni si ani
Am patru casute doua pentru start date (luna; an) si doua pentru end date (luna; an).
Am incercat ceva de genul dar nu functioneaza corect:
Cod: Selectaţi tot
WHERE luna BETWEEN $sch_luna_inceput AND $sch_luna_sfarsit
AND anul BETWEEN $sch_luna_sfarsit AND $sch_an_sfarsit
Cum am facut, daca aleg lunile 01 - 02 si anii 2014 - 2015 adica:
Cod: Selectaţi tot
WHERE luna BETWEEN 1 AND 2
AND anul BETWEEN 2014 AND 2015
Imi returneaza numai lunile 1 si 2 si anii respectivi, vreau sa imi returneze perioada dintre 01.2014 si 02.2015
Multumesc!
MarPlo
Mesaje:4343
De unde sa stie programul ca vrei luna 1 din primul sau /si al doilea an.
Ca sa selectezi randuri intre 2 date de timp ar trebui sa lucrezi cu coloana de tip DATETIME in tabelul mysql.
Pentru ceea ce vrei e nevoie de o singura coloana DATE; apoi aplici:
Cod: Selectaţi tot
WHERE col_date BETWEEN '2014-01-1' AND '2015-02-1'
MarPlo
Mesaje:4343
Daca totusi vrei sa pastrezi forma cu 4 coloane (start si end: an, luna), poti incerca asa:
Cod: Selectaţi tot
WHERE STR_TO_DATE(CONCAT(anul, '-', luna, '-01'), '%Y-%M-%d') BETWEEN '$sch_an_inceput-$sch_luna_inceput-01' AND '$sch_an_sfarsit-$sch_luna_sfarsit-01'
- Se foloseste BETWEEN cu unirea datelor din coloane intr-un format de tip DATE.
sterica
Mesaje:285
Multumesc foarte mult de ajutor
Subiecte similare
- Setare valori din array in select tag
JavaScript - jQuery - Ajax
Primul mesaj
Salut am un array cu orele de functionare
$data = array (
'0400' => '04:00 AM',
'0430' => '04:30 AM',
'0500' => '05:00 AM',
'0530'...
Ultimul mesaj
Testeaza urmatorul cod.
Daca ceva mai trebuie schimbat, incearca si tu sa modifici dupa cum stii, in functie de ce vrei sa obtii.
Open:...