it-swarm.com.de

PostgreSQL wählt leere Felder vom Typ Integer aus

Ich habe eine Tabelle und muss alle Zeilen mit einem leeren Wert für das Feld fk_fc_id Auswählen (als Auftakt zum Löschen).

    Column     |            Type             |                         Modifiers
---------------+-----------------------------+------------------------------------------------------------
 di_timestamp  | timestamp without time zone |
 di_item_value | character varying(10)       |
 fk_fc_id      | integer                     |
 di_id         | integer                     | not null default nextval('data_item_di_id_seq1'::regclass)

Dies funktioniert jedoch nicht,

# select fk_fc_id,di_timestamp,di_item_value from data_item where fk_fc_id="";
ERROR:  zero-length delimited identifier at or near """"
LINE 1: ...di_timestamp,di_item_value from data_item where fk_fc_id="";
                                                                    ^

Der Versuch Null funktioniert auch nicht.

Wenn jemand Vorschläge hat, wie man das sortiert, wäre ich sehr dankbar.

13
James

Dies hat weder mit der Datenbankverwaltung noch mit PostgreSQL zu tun, aber wie @foibs antwortete, sollten Sie sich IS NULL ansehen:

 SELECT fk_fc_id,
        di_timestamp,
        di_item_value  
 FROM data_item  
 WHERE fk_fc_id IS NULL
21
KookieMonster

Sie müssen ein einfaches Anführungszeichen verwenden:

SELECT fk_fc_id,
        di_timestamp,
        di_item_value  
 FROM data_item  
 WHERE fk_fc_id=''
0
Clara