Elvis L Posted September 2, 2015 Report Share Posted September 2, 2015 Sveiki, nevaru saprast ko daru nepareizi, man ir ieraksti tabulā, kur katram ierakstam nāk klāt datums kas ir formātā (piem) 14.08.2015es vēlos atlasīt ierakstus no līdz datuma mēģināju šādi SELECT * FROM mani_ieraksti WHERE datums >= '14.08.2015'AND datums <= '15.08.2015' rezūltātā izmet ierakstu arī no 07 mēneša, mēģināts bija arī ar 'between' , tas pats... Paldies par palīdzību jau iepriekš! Quote Link to comment Share on other sites More sharing options...
e-remit Posted September 2, 2015 Report Share Posted September 2, 2015 Kāds tips ir laukam `datums`? Nav gadījumā VARCHAR? Quote Link to comment Share on other sites More sharing options...
Elvis L Posted September 2, 2015 Author Report Share Posted September 2, 2015 (edited) ehh ir gan kā man tagad veiksmīgi pārkonvertēt ierkastus? Edited September 2, 2015 by Elvis L Quote Link to comment Share on other sites More sharing options...
kasisppr Posted September 2, 2015 Report Share Posted September 2, 2015 Nu vari pamēģināt ar STR_TO_DATE() https://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html#function_str-to-date Manuprāt šim vajadzētu strādāt SELECT * FROM mani_ieraksti WHERE STR_TO_DATE(datums, '%d.%m.%Y') BETWEEN STR_TO_DATE("14.08.2015", '%d.%m.%Y') AND STR_TO_DATE("15.08.2015", '%d.%m.%Y') Taču skaties cik ātri tas izpildās. Pareizāk gan būtu tomēr, lai datums ir "date" vai "datetime" lauka tips. No pieredzes saku, ja ļausi saglabāt nestandartizētus datuma formātus gaidi pamatīgas problēmas ar galvassāpēm vēlāk. Savukārt par to kā pārkonvertēt: Izveido jaunu datuma laiku ar "date/datetime" tipu (var arī būt timestamp, bet es pēc iespējas cenšos izvairīties) piemēram "temp_datums". Tad ar MySQL pieprasījumu pārkonvertē UPDATE mani_ieraksti SET temp_datums = STR_TO_DATE(datums, '%d.%m.%Y'); Ja visi dati korekti pārnesās uz jauno data tipu, dzēs ārā veco "datums" colonu un nomaini "temp_datums" uz "datums". Protams neaizmirsti, ka tagad datubāzē datums jāsaglabā jaunā formātā "Y-m-d" (vai "Y-m-d H:i:s"), tāpēc applikācijas kodā, kurš glabā ierakstus veic attiecīgas izmaiņas. Quote Link to comment Share on other sites More sharing options...
Elvis L Posted September 3, 2015 Author Report Share Posted September 3, 2015 Liels paldies, par izsmeļošo atbildi, ņemšu vērā Jūsu ieteikumus Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.