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

Cách chọn dữ liệu cụ thể giữa Quotes ()

đây là Xấu xí , nhưng cuối cùng sẽ hoạt động:

COLUMN ='jksjdksls#$#[email protected]@kskjfjf,"123,456,789" lsnslkdswfnslsjfls'

left( right(COLUMN,len(COLUMN)-instr(COLUMN,"""")), instr( right(COLUMN,len(COLUMN)-instr(COLUMN,"""")), """") -1 )

-> 123,456,789

Đây là những gì được thực hiện:

  • Chúng tôi lấy chuỗi này 'jksjdksls#$#[email protected]@kskjfjf,"123,456,789" lsnslkdswfnslsjfls'
  • tìm lần xuất hiện đầu tiên của "với instr(COLUMN,"""") -> trả về 24
  • tận cùng bên phải của chuỗi với. Do đó, chúng ta cần lấy độ dài của chuỗi bằng len(COLUMN) -> 55 và trừ vị trí của giá trị đầu tiên "(24)
  • thì chúng ta cần tìm cái thứ hai "với instr() trong chuỗi bên phải, mà chúng ta cần tạo lại bằng right(COLUMN,len(COLUMN)-instr(COLUMN,"""")) và trừ 1 cho dấu ".



  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 - Xóa tất cả các ký tự ASCII không in được

  2. Các giới hạn NVARCHAR và VARCHAR trong SQL

  3. Xoay nhiều hàng

  4. Theo dõi SQL Server Thay đổi theo lịch trình khi ngày thay đổi

  5. TRY_CONVERT không thành công trên SQL Server 2012