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

VARCHAR(MAX) се държи странно при конкатениране на низ

Този подход за конкатенация на низове обикновено работи, но не е гарантиран.

Официалният ред в статията от БЗ за подобен проблем е, че „Правилното поведение за обобщена конкатенационна заявка е недефинирано.“

Трябва да има някаква тънка разлика между плановете. Можете или да промените заявката, за да премахнете разликата и да получите необходимия план за изпълнение, или можете/трябва, разбира се, просто да използвате XML PATH тъй като сте на SQL Server 2005 и това е документирано да работи.




  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. sp_generate_inserts за SQL Server 2008

  3. Дизайн на разрешения

  4. Сървър срещу източник на данни в низ за връзка

  5. Как да върнете резултатите от заявката като списък, разделен със запетая в SQL Server – STRING_AGG()