Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

Trích xuất giá trị nvarchar từ XML trong T-SQL:chỉ trả về một ký tự

Không sử dụng nvarchar mà không có kích thước. Từ tài liệu :

Nếu bạn không biết độ dài chính xác, bạn luôn có thể sử dụng nvarchar(max) :

declare @criteria xml;
set @criteria = N'<criterion id="DocName"><value>abcd</value></criterion>';

declare @val nvarchar(max);
set @val = @criteria.value('(criterion[@id="DocName"]/value)[1]', 'nvarchar(max)');

select @val;

bản trình diễn sql fiddle




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL Server BCP Xuất trong đó dấu phẩy trong trường SQL

  2. SQL để lấy giá trị tiếp theo không phải giá trị null trong cột

  3. Bất kỳ giải pháp nào khác cho SQL Bộ phương tiện có 2 họ phương tiện nhưng chỉ có 1 được cung cấp. Tất cả các thành viên phải được cung cấp. lỗi?

  4. 5 Lợi ích bảo mật của các giải pháp giám sát cơ sở dữ liệu dựa trên đám mây

  5. SQL Server có tối ưu hóa tính toán DATEADD trong truy vấn chọn không?