Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

Dapatkan substring di SQL Server

Anda dapat menggunakan reverse bersama dengan substring dan charindex untuk mendapatkan apa yang Anda cari:

select
    reverse(substring(reverse(filename), 1, 
        charindex('.', reverse(filename))-1)) as FileExt
from
    mytable

Ini bertahan, meskipun Anda memiliki beberapa . di file Anda (mis.-hello.world.exe akan mengembalikan exe ).

Jadi saya bermain-main sedikit dengan ini, dan ini adalah cara lain (hanya satu panggilan ke reverse ):

select 
    SUBSTRING(filename, 
        LEN(filename)-(CHARINDEX('.', reverse(filename))-2), 8000) as FileExt
from
    mytable

Ini menghitung 10.000.000 baris dalam 25 detik versus 29 detik untuk metode sebelumnya.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cara membuat skrip untuk membuat Ulang Batasan Kunci Asing di Database SQL Server - Tutorial SQL Server / TSQL Bagian 73

  2. Pernyataan ALTER TABLE bertentangan dengan batasan FOREIGN KEY di SQL Server - Tutorial SQL Sever / TSQL Bagian 69

  3. Cara Memodifikasi Periode Retensi Change Data Capture (CDC) di SQL Server - Tutorial SQL Server

  4. Ketergantungan SQL Server

  5. Cara Menemukan Format Tanggal yang Digunakan untuk Bahasa Tertentu di SQL Server (T-SQL)