Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Korzystanie z krotek w klauzuli SQL IN

Biorąc pod uwagę bardzo drobną poprawkę (zastąp podwójne cudzysłowy pojedynczym i dodaj VALUES słowa kluczowego), proponowana składnia jest poprawną składnią standardowego SQL-92, tj.

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

Niestety, firma MSFT nie dodała go do SQL Server i uważa, że ​​jest to funkcja „nieplanowana”.

FWIW PostgreSQL i Sqlite to przykłady produktów SQL, które obsługują tę składnię.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Co zrobić z typem oczekiwania ASYNC NETWORK IO?

  2. Jak działa funkcja QUOTENAME() w programie SQL Server (T-SQL)

  3. Trigram Wildcard – wyszukiwanie ciągów znaków w SQL Server

  4. Wykonywanie procedury składowanej przy użyciu struktury encji

  5. Wprowadzenie do wielowyrazowych funkcji z wartościami tabelarycznymi (MSTVF) w SQL Server