Ich habe eine Tabelle , parcelsdie zur Zeit die Spalten enthält owner_addr1, owner_addr2, owner_addr3. Manchmal ist eines oder beide der beiden letztgenannten Felder leer. Ich möchte sie in einem einzigen neuen Feld kombinieren, in owner_addrdem jedes der oben genannten Felder mit //jedem von ihnen verknüpft ist .
Wenn jedoch eine oder mehrere der ursprünglichen Spalten NULL sind, möchte ich nicht //mit der Ergebnisspalte verketten . So zum Beispiel, wenn owner_addr1ist 123 4th Avenue SEund owner_addr2und owner_addr3sind NULL, dann möchte ich die Ergebnisspalte nur sein 123 4th Avenue SE, nicht 123 4th Avenue SE // //(was passieren würde , wenn ich gerade tat CONCAT()mit //zwischen den NULL - Strings ... ich nur hinzufügen möchten //zwischen nicht NULLSpalten oder es verlassen insgesamt aus, wenn es nur eine Nicht- NULLSpalte gibt.
Gibt es eine einfache Möglichkeit, diese Art der bedingten Verkettung in Postgresql durchzuführen, bei der leere Zeilen weggelassen werden? Oder sollte ich dazu ein Python-Skript schreiben?
concat_ws()(undconcat()) FunktionsvolatilitätSTABLE(nichtIMMUTABLE), der deren direkte Verwendung in Ausdrucksindizes verbietet.