Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Възможно ли е да се използват параметри на заявката за попълване на ключовата дума IN

Можете да подадете списъка с GUID като параметър на низ, разделен със запетаи, и да използвате UDF с таблична стойност, за да ги разделите в таблица, която да използвате във вашия IN клауза:

SELECT *
FROM my_table
WHERE id IN (SELECT id FROM dbo.SplitCSVToTable(@MyCSVParam))

Erland Sommarskog има интересна статия с примери как да разделяте низове, разделени със запетаи, в таблици с помощта на UDF.

(От съображения за производителност, трябва да се уверите, че вашият UDF е с вградена таблична стойност, а не с множество изрази.)




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Уникално ограничение на две полета и тяхната противоположност

  2. Колко ограничения могат да бъдат дадени на колона от таблица в SQL Server

  3. Къде се регистрират опитите за свързване на SQL Server?

  4. SQL Server:редове в колони

  5. Най-добрият начин за създаване на индекси в SQL Server