2017-02-01 1 views
0

In Vertica, wie kann ich eine Spalte, die die min von 3 vorhandenen Spalten ist? Im Fall von allen Nullwerten sollte es Null zurückgeben.Holen Sie sich das Minimum von 3 Spalten in Vertica

Ich habe min() Funktion versucht, aber festgestellt, dass es nur min einer Spalte zurückgibt.

Ich dachte über eine Fallaussage nach, stellte aber fest, dass es sehr lang wäre, jede Kombination von Ergebnissen zu erfassen und sehr ressourcenintensiv zu sein.

Ich freue mich über Vorschläge. Vielen Dank!

my sample data

Antwort

0

Verwenden LEAST den Minimalwert von mehreren Spalten pro Zeile zu erhalten.

select least(coalesce(open_hrs_diff,0),coalesce(click_hrs_diff,0),coalesce(login_hrs_diff,0)) 
from tablename 
+0

LEERE() !!! tolle. Ich hatte keine Ahnung, dass das existiert. Ich danke dir sehr! Ich konnte das nicht durch googeln herausfinden. Schätze wirklich deine Hilfe. –

+0

sure..the Frage Titel sollte "Minimum von 3 Spalten" sagen. Ich habe es entsprechend bearbeitet. –