saya memiliki string besar di SQL Server. Saya ingin memotong string itu menjadi 10 atau 15 karakter
String asli
this is test string. this is test string. this is test string. this is test string.
String yang diinginkan
this is test string. this is ......
sql-server
tsql
SanamShaikh
sumber
sumber
Jawaban:
Jika Anda hanya ingin mengembalikan beberapa karakter dari string panjang Anda, Anda dapat menggunakan:
Lihat SQL Fiddle dengan Demo .
Ini akan mengembalikan 15 karakter pertama dari string dan kemudian menggabungkannya
...
ke ujungnya.Jika Anda ingin memastikan bahwa string kurang dari 15 tidak mendapatkan
...
maka Anda dapat menggunakan:Lihat SQL Fiddle dengan Demo
sumber
...
ditambahkan jika tidak berlakuKamu bisa memakai
atau
sumber
Saya pikir jawabannya di sini bagus, tetapi saya ingin menambahkan skenario.
Beberapa kali saya ingin mengambil sejumlah karakter dari depan string, tanpa mengkhawatirkan panjangnya. Ada beberapa cara untuk melakukan ini dengan RIGHT () dan SUBSTRING (), tetapi semuanya perlu mengetahui panjang string yang terkadang dapat memperlambat segalanya.
Saya telah menggunakan fungsi STUFF () sebagai gantinya:
Ini menggantikan panjang string yang tidak dibutuhkan dengan string kosong.
sumber
Anda juga dapat menggunakan operasi Cast ():
sumber
Anda juga dapat menggunakan di bawah ini, iif menghindari pernyataan kasus dan hanya menambahkan elipsis saat diperlukan (hanya baik di SQL Server 2012 dan yang lebih baru) dan pernyataan kasus lebih sesuai dengan ANSI (tetapi lebih bertele-tele)
sumber
sumber