Di Oracle, LTRIM() fungsi memungkinkan Anda untuk memotong bagian kiri string. Secara default, ini memangkas spasi putih, tetapi Anda dapat secara opsional menentukan karakter atau karakter yang berbeda untuk dipangkas.
Sintaks
Sintaksnya seperti ini:
LTRIM(char [, set ])
Dimana char dan set dapat berupa salah satu tipe data CHAR , VARCHAR2 , NCHAR , NVARCHAR2 , CLOB , atau NCLOB .
LTRIM menghapus dari ujung kiri char semua karakter yang ada di set . Jika Anda tidak menentukan set , maka defaultnya adalah satu kosong.
Contoh
Berikut adalah contoh sederhana untuk ditunjukkan:
SELECT LTRIM(' Cat')
FROM DUAL; Hasil:
LTRIM('CAT')
_______________
Cat Dalam hal ini saya tidak menentukan karakter mana yang akan dipangkas, sehingga setiap kosong dipangkas dari bagian kiri string.
Ini dia lagi jika dibandingkan dengan string asli (non-empuk):
SELECT ' Cat'
FROM DUAL
UNION ALL
SELECT LTRIM(' Cat')
FROM DUAL; Hasil:
'CAT'
___________
Cat
Cat Tentukan Karakter
Dalam contoh ini saya menentukan karakter untuk dipangkas:
SELECT LTRIM('...Cat...', '.')
FROM DUAL; Hasil:
LTRIM('...CAT...','.')
_________________________
Cat...
Jadi kita bisa melihat bahwa karakter itu dipangkas dari sisi kiri tetapi tidak dari sisi kanan. Untuk memangkas sisi kanan, gunakan RTRIM() atau TRIM() .
Perhatikan bahwa LTRIM() hanya memangkas karakter/s di set up sampai ada karakter yang tidak di set. Ini contoh yang saya maksud:
SELECT LTRIM('...A...Cat', '.')
FROM DUAL; Hasil:
LTRIM('...A...CAT','.')
__________________________
A...Cat
Namun, jika kami menyertakan A di set, maka kita mendapatkan hasil yang berbeda:
SELECT LTRIM('...A...Cat', '.A')
FROM DUAL; Hasil:
LTRIM('...A...CAT','.A')
___________________________
Cat Contoh Basis Data
Berikut ini contoh pemangkasan bagian kiri nilai dalam kolom database:
SELECT
country_name,
LTRIM(country_name, 'Ar') AS Trimmed
FROM countries
FETCH FIRST 5 ROWS ONLY; Hasil:
COUNTRY_NAME TRIMMED _______________ ___________ Argentina gentina Australia ustralia Belgium Belgium Brazil Brazil Canada Canada
Nilai Null
Jika salah satu argumennya null hasilnya null :
SET NULL 'null';
SELECT
LTRIM(null, 3),
LTRIM(' Cat', null),
LTRIM(null, null)
FROM DUAL; Hasil:
LTRIM(NULL,3) LTRIM('CAT',NULL) LTRIM(NULL,NULL)
________________ ____________________ ___________________
null null null
Secara default, SQLcl dan SQL*Plus mengembalikan ruang kosong setiap kali null terjadi sebagai akibat dari SQL SELECT penyataan.
Namun, Anda dapat menggunakan SET NULL untuk menentukan string berbeda yang akan dikembalikan. Di sini saya menetapkan bahwa string null harus dikembalikan.
Memotong String Kosong
Melewati string kosong sebagai argumen kedua menghasilkan null :
SET NULL 'null';
SELECT LTRIM(' Cat', '')
FROM DUAL; Hasil:
LTRIM('CAT','')
__________________
null Tetapi menambahkan satu spasi ke string kosong akan mengubahnya, dan memangkas spasi kosong apa pun dari kiri string:
SELECT LTRIM(' Cat', ' ')
FROM DUAL; Hasil:
LTRIM('CAT','')
__________________
Cat Jumlah Argumen Salah
Memanggil LTRIM() tanpa memberikan argumen apa pun mengembalikan kesalahan:
SELECT LTRIM()
FROM DUAL; Hasil:
Error starting at line : 1 in command - SELECT LTRIM() FROM DUAL Error at Command Line : 1 Column : 8 Error report - SQL Error: ORA-00938: not enough arguments for function 00938. 00000 - "not enough arguments for function" *Cause: *Action:
Dan meneruskan jumlah argumen yang salah menghasilkan kesalahan:
SELECT LTRIM('Cat', 1, '>')
FROM DUAL; Hasil:
Error starting at line : 1 in command -
SELECT LTRIM('Cat', 1, '>')
FROM DUAL
Error at Command Line : 1 Column : 8
Error report -
SQL Error: ORA-00939: too many arguments for function
00939. 00000 - "too many arguments for function"
*Cause:
*Action: