Ich weiß, dies ist ein "nicht eingebaut" oder "wie dba denkt", sondern ein Programmierer Ansatz, wie könnte man von 3 Felder anfordern, um die, die nicht null ist, in ein Ergebnis zu erhalten Feld.SQL unite Felder zu einem Ergebnis
Lassen Sie uns sagen, dass wir einen Tisch mit f1,f2,f3,f4,f5.
Sagen wir f2,f3,f4
vom gleichen Typ sind.
Lassen Sie uns sagen, dass der Inhalt der Tabelle
(key1,null,null,value1,value2)
(key2,null,value3,value4,value5)
(key3,null,null,null,value6)
Jetzt Tupel sein, wenn wir das erste Tupel zurückgeben dann bekommen wir (key1) erhalten wir (key1, Wert1, Wert2)
Wenn wir fragen, für key2 bekommen wir (key1,value3,value5)
wenn wir für key3 bitten wir (key1,null,value6)
bekommen Wie ist es möglich, die Felder in der Priorität, wenn y zu erhalten ou haben Wert in f2, dann wird es in das zurückgegebene Feld gesetzt, nur dann, wenn wir Wert in f3 haben, dann wird es in das mittlere zurückgegebene Feld gesetzt, nur dann, wenn wir Wert in f4 haben, wird es in das mittlere zurückgegebene Feld
gesetztDas Hauptziel besteht darin, das Ergebnis in ein einzelnes Feld zu bringen und den Overhead am Ergebnisende zu verhindern.
klingt, als ob coalease die Funktion, die Sie brauchen, ist –