sql >> Databáze >  >> RDS >> Oracle

Oracle:'=ANY()' vs. 'IN ()'

ANY (nebo jeho synonymum SOME ) je syntaktický cukr pro EXISTS s jednoduchou korelací:

SELECT  *
FROM    mytable
WHERE   x <= ANY
        (
        SELECT  y
        FROM    othertable
        )

je stejný jako:

SELECT  *
FROM    mytable m
WHERE   EXISTS
        (
        SELECT  NULL
        FROM    othertable o
        WHERE   m.x <= o.y
        )

S podmínkou rovnosti v poli bez hodnoty null se to stane podobným IN .

Všechny hlavní databáze, včetně SQL Server , MySQL a PostgreSQL , podpořte toto klíčové slovo.



  1. Pokrok v online upgradu

  2. Jak najít všechna porušení omezení v databázi SQL Server

  3. Zábava s kompresí (columnstore) na velmi velkém stole – část 2

  4. Crystal Reports vs. Microsoft SQL Server Reporting Services