Subiecte

mysql plenar

Despre cât de “sănătos” e MySQL s-au scris multe. Alții l-au înjurat sau blestemat cu mai mult talent decât aș putea-o face eu. Un mic exemplu care m-a lovit azi:

1. Inițial (greșit):

SELECT MIN(id) FROM inbox WHERE data>2018-01-01;

rezultat: 2.635.027

2. Final (corect):

SELECT MIN(id) FROM inbox WHERE data>’2018-01-01′;

rezultat: 12.667.657

Singurul lucru care mi-a sugerat că varianta 1 nu e ceea ce-mi doream e că știam la ce rezultat să mă aștept.

Am încercat să înțeleg ce execută el de fapt în varianta “greșită” dar nu am reușit, nici pe baza intuiției nici pe baza datelor din tabelă.

Observați “el” în fraza anterioară care ilustrează încă o dată cum psihicul uman supus necunoscutului (malefic) tinde să personifice.

2 comentarii la mysql plenar

  • Aburel

    cred ca data>2018-01-01 inseamna data>2016 (= 2018 – 1 – 1)

  • mrx

    Și data 2016 ce înseamnă? 🙂 Deja bănuiesc răspunsul: 2016 înseamnă 2016-01-01. DEEECI data 2018-01-01 în opinia MySQL e de fapt data ‘2016-01-01’. Care este ea. Bun așa.

Comentați

 

 

 

Puteţi folosi aceste etichete HTML

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

captcha: * Time limit is exhausted. Please reload CAPTCHA.

WordPress Appliance - Powered by TurnKey Linux