MariaDB
 sql >> Teknologi Basis Data >  >> RDS >> MariaDB

Bagaimana TRIM() Bekerja di MariaDB

Di MariaDB, TRIM() adalah fungsi string bawaan yang menghapus karakter dari awal atau akhir string.

Secara default, ini menghilangkan spasi awal dan akhir, tetapi Anda dapat menentukan karakter mana yang akan dihapus, serta sisi mana yang ingin Anda hapus.

Sintaks

TRIM() fungsi dapat digunakan sebagai berikut:

TRIM([remstr FROM] str) 

Atau:

TRIM([{BOTH | LEADING | TRAILING} [remstr] FROM] str) 

Dimana str adalah string untuk menghapus spasi tambahan, dan remstr adalah string yang akan dihapus.

Jika remstr tidak disediakan, maka TRIM() menghilangkan spasi.

Contoh

Berikut ini contoh dasarnya:

SELECT 
    '   Caribbean Island   ' AS "Untrimmed",
    TRIM('   Caribbean Island   ') AS "Trimmed"; 

Hasil:

+-------------------------+------------------+| Belum dipangkas | Dipangkas |+-----------------------+------------------+| Pulau Karibia | Pulau Karibia |+-----------------------+------------------+ 

Contoh ini menggunakan sintaks paling dasar. Yang kami lakukan hanyalah menyediakan tali untuk dipangkas. Kami tidak menentukan karakter mana yang akan dipangkas, sehingga semua spasi dipangkas dari kedua sisi string.

Kita juga dapat melihat bahwa ruang di dalam string tetap utuh.

BOTH Argumen

Secara default, TRIM() memotong kedua sisi tali. Namun, Anda dapat secara eksplisit menentukan BOTH jika Anda mau:

SELECT 
    '   Caribbean Island   ' AS "Untrimmed",
    TRIM(BOTH FROM '   Caribbean Island   ') AS "Trimmed"; 

Hasil:

+-------------------------+------------------+| Belum dipangkas | Dipangkas |+-----------------------+------------------+| Pulau Karibia | Pulau Karibia |+-----------------------+------------------+ 

Kami mendapatkan hasil yang sama seperti contoh sebelumnya.

Yang LEADING Argumen

Menentukan LEADING membatasi operasi trim hanya pada awal string:

SELECT 
    '   Caribbean Island   ' AS "Untrimmed",
    TRIM(LEADING FROM '   Caribbean Island   ') AS "Trimmed"; 

Hasil:

+------------------------+--------------------- +| Belum dipangkas | Dipangkas |+-----------------------+---------------------+ | Pulau Karibia | Pulau Karibia |+-----------------------+--------------------- +

Kita dapat melihat bahwa masih ada spasi di sisi kanan string yang dipangkas. Hanya bagian kiri yang dipangkas.

The TRAILING Argumen

Menentukan TRAILING membatasi operasi trim hanya pada awal string:

SELECT 
    '   Caribbean Island   ' AS "Untrimmed",
    TRIM(TRAILING FROM '   Caribbean Island   ') AS "Trimmed"; 

Hasil:

+------------------------+--------------------- +| Belum dipangkas | Dipangkas |+-----------------------+---------------------+ | Pulau Karibia | Pulau Karibia |+-----------------------+--------------------- +

Kali ini, hanya bagian kanan yang dipangkas. Spasi masih ada di sisi kiri string yang dipangkas.

Tentukan String untuk Dipangkas

Berikut adalah contoh untuk menentukan karakter mana yang akan dipotong:

SELECT 
    '...mountain...' AS "Untrimmed",
    TRIM('.' FROM '...mountain...') AS "Trimmed"; 

Hasil:

+----------------+----------+| Belum dipangkas | Dipangkas |+----------------+----------+| ...gunung... | gunung |+----------------+----------+

Tidak harus satu karakter. Anda dapat menentukan string apa pun untuk dipangkas:

SELECT 
    TRIM('.' FROM '.+.mountain.+.') AS "1",
    TRIM('.+' FROM '.+.mountain.+.') AS "2",
    TRIM('+.' FROM '.+.mountain.+.') AS "3",
    TRIM('.+.' FROM '.+.mountain.+.') AS "4"; 

Hasil:

+-------------+--------------+--------------+- ---------+| 1 | 2 | 3 | 4 |+--------------+--------------+--------------+-- --------+| +.gunung.+ | .gunung.+. | .+.gunung. | gunung |+--------------+--------------+--------------+-- --------+

Anda bahkan dapat memangkas sebagian kata jika Anda mau:

SELECT TRIM('moun' FROM 'mountain'); 

Hasil:

+-----------------------------+| TRIM('gunung' DARI 'gunung') |+------------------------------+| tain |+------------------------------+

Kita juga dapat menggunakan BOTH , LEADING dan TRAILING argumen saat menentukan string yang akan dipangkas.

Contoh:

SELECT 
    TRIM(BOTH '.' FROM '...mountain...') AS "Both",
    TRIM(LEADING '.' FROM '...mountain...') AS "Leading",
    TRIM(TRAILING '.' FROM '...mountain...') AS "Trailaing"; 

Hasil:

+----------+-------------+-------------+| Keduanya | Terkemuka | Trailaing |+----------+-------------+-------------+| gunung | gunung... | ...gunung |+----------+-------------+-------------+

Argumen Null

Jika diberi null argumen, hasilnya adalah null :

SELECT TRIM(null); 

Hasil:

+------------+| TRIM(null) |+------------+| NULL |+------------+

Mode Oracle

Ketika tidak berjalan dalam mode Oracle, jika hasilnya kosong (yaitu memiliki panjang nol) hasilnya adalah string kosong.

Namun, saat dijalankan dalam mode Oracle, hasilnya adalah null .

Ini dia dalam mode default (yaitu tidak dalam mode Oracle):

SELECT TRIM(''); 

Hasil:

+----------+| TRIM('') |+----------+| |+----------+

Sekarang mari kita beralih ke mode Oracle:

SET SQL_MODE=ORACLE; 

Dan jalankan kembali kodenya:

SELECT TRIM(''); 

Hasil:

+----------+| TRIM('') |+----------+| NULL |+----------+

Ada juga cara alternatif untuk melakukan ini. Alih-alih beralih ke mode Oracle, Anda dapat menggunakan TRIM_ORACLE() sebagai nama fungsi.

Mari beralih kembali ke mode default:

SET SQL_MODE=DEFAULT; 

Dan sekarang jalankan TRIM_ORACLE() :

SELECT TRIM_ORACLE(''); 

Hasil:

+-----------------+| TRIM_ORACLE('') |+-----------------+| NULL |+-----------------+

Argumen Tidak Ada

Memanggil TRIM() tanpa argumen menghasilkan kesalahan:

SELECT TRIM(); 

Hasil:

ERROR 1064 (42000):Anda memiliki kesalahan dalam sintaks SQL Anda; periksa manual yang sesuai dengan versi server MariaDB Anda untuk sintaks yang tepat untuk digunakan di dekat ')' di baris 1

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana PI() Bekerja di MariaDB

  2. Bagaimana POW() Bekerja di MariaDB

  3. Bagaimana DEGREES() Bekerja di MariaDB

  4. Bagaimana SUBDATE() Bekerja di MariaDB

  5. Bagaimana BIN() Bekerja di MariaDB