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

Chia một cột thành nhiều hàng

Tôi nghĩ bạn có thể làm được điều này:

SELECT
    T.id, RIGHT(LEFT(T.csv,Number-1),
    CHARINDEX(',',REVERSE(LEFT(','+T.csv,Number-1))))
FROM
    master..spt_values,
    your_table T
WHERE
    Type = 'P' AND Number BETWEEN 1 AND LEN(T.csv)+1
    AND
    (SUBSTRING(T.csv,Number,1) = ',' OR SUBSTRING(T.csv,Number,1)  = '') 

Mã đã bị đánh cắp một cách đáng xấu hổ từ trang web này.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SqlBulkCopy từ một danh sách <>

  2. Làm cách nào để viết CẬP NHẬT SQL với bí danh Bảng trong SQL Server 2008?

  3. Trả lại các khóa chính từ một máy chủ được liên kết trong SQL Server (Ví dụ T-SQL)

  4. NEWID () so với NEWSEQUENTIALID () trong SQL Server:Sự khác biệt là gì?

  5. Làm cách nào để di chuyển một bảng vào một lược đồ trong T-SQL