Autor Zpráva
Karel Vr.
Profil *
Ahoj,

rychlý dotaz na který jsem nenašel odpověď:

mám v DB obrovskou tabulku a v ní jeden sloupec, ve kterém jsou samé nuly (0) a jen u některých záznamů vyplněny cizí klíče (integer). Všude kde jsou nuly bych chtěl mít hodnotu NULL (prázdnou hodnotu). Jde to nějak jednoduše vyřešit?

Díky


Pardon vyřešeno. Netušil jsem, že je to tak primitivní. Myslel jsem, že s NULL se moc nijak pracovat nedá.

UPDATE nazev_tabulky SET nazev_sloupce = NULL WHERE nazev_sloupce = 0
Kajman
Profil
V přiřazení není potíž (update i insert). Na null je potřeba dávat pozor spíše ve where, nelze použít = a in(select co vrací i null) taky člověkovu mysl může poplést.

Pro opačné přehození by tedy bylo potřeba psát
UPDATE nazev_tabulky SET nazev_sloupce = 0 WHERE nazev_sloupce IS NULL

A ještě je záludnost, že pro některé databáze je prázdný řetězec a NULL to samé a pro některé jsou to dvě různé věci.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0