Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Utilisation de tuples dans la clause SQL IN

Compte tenu d'une modification très mineure (remplacez les guillemets doubles par des simples et ajoutez les VALUES mot-clé), la syntaxe que vous proposez est la syntaxe standard SQL-92 valide, c'est-à-dire

SELECT *
  FROM mytable
 WHERE (group_id, group_type) IN (
                                  VALUES ('1234-567', 2), 
                                         ('4321-765', 3), 
                                         ('1111-222', 5)
                                 );

Malheureusement, MSFT ne l'a pas ajouté à SQL Server et considère qu'il s'agit d'une fonctionnalité "non planifiée".

FWIW PostgreSQL et Sqlite sont des exemples de produits SQL qui prennent en charge cette syntaxe.