2016-05-28 11 views
1

Gibt es eine Möglichkeit zum Ausführen der folgenden Sql-Abfrage in HiveQL?HIVE: Nicht in Klausel

select * from my_table 
where (a,b,c) not in (x,y,z) 

wo a, b, c entsprechen jeweils x, y, z

Thanks :)

+1

Was meinst du mit diesem Konstrukt? Beispieldaten und gewünschte Ergebnisse sind sehr hilfreich. –

Antwort

0

Sie werden diese nach unten zu trennen Bedingungen brechen:

SELECT * 
FROM my_table 
WHERE a != x AND b != y AND c != z 
+0

Danke! Ich erkannte die Beschränkung von Hive, dass nur eine Unterabfrage innerhalb einer WHERE-Klausel ausgeführt werden kann, und ich folgte Ihrer Methode, um Dinge in Bewegung zu bringen! :) –

0

Haben Sie das vor?

where a <> x or b <> y or c <> z 

Oder das?

where a not in (x, y, z) and 
     b not in (x, y, z) and 
     c not in (x, y, z) 

Oder eine andere Variation?

+0

Ich meinte die erste Variante, die Sie vorgeschlagen haben! –