sql >> Databáze >  >> RDS >> Mysql

MySQL, je lepší vložit NULL nebo prázdný řetězec?

Pomocí NULL můžete rozlišovat mezi „nedat žádná data“ a „vložit prázdná data“.

Některé další rozdíly:

  • A LENGTH z NULL je NULL , LENGTH prázdného řetězce je 0 .

  • NULL s jsou seřazeny před prázdnými řetězci.

  • COUNT(message) bude počítat prázdné řetězce, ale ne NULL s

  • Můžete hledat prázdný řetězec pomocí vázané proměnné, ale nikoli NULL . Tento dotaz:

    SELECT  *
    FROM    mytable 
    WHERE   mytext = ?
    

    nikdy nebude odpovídat NULL v mytext bez ohledu na hodnotu, kterou předáte od klienta. Aby odpovídal NULL s, budete muset použít jiný dotaz:

    SELECT  *
    FROM    mytable 
    WHERE   mytext IS NULL
    


  1. Vnitřní spojení vs kde

  2. jak přiřadit hodnotu cte proměnné

  3. PostgreSQL – Jak eliminovat opakované hodnoty

  4. Adaptivní server je nedostupný nebo neexistuje chyba při připojování k SQL Serveru z PHP