Các Hàm Xử Lý Chuỗi Trong Oracle - Openplanning

  • Tất cả tài liệu
  • Java
    • Java Basic
    • Java Collections Framework
    • Java IO
    • Java New IO
    • Java Date Time
    • Servlet/JSP
    • Eclipse Tech
      • SWT
      • RCP
      • RAP
      • Eclipse Plugin Tools
    • XML & HTML
    • Java Opensource
    • Java Application Servers
  • Maven
  • Gradle
  • Servlet/Jsp
  • Thymeleaf
  • Spring
    • Spring Boot
    • Spring Cloud
  • Struts2
  • Hibernate
  • Java Web Service
  • JavaFX
  • SWT
  • Oracle ADF
  • Android
  • iOS
  • Python
  • Swift
  • C#
  • C/C++
  • Ruby
  • Dart
  • Batch
  • Database
    • Oracle
    • MySQL
    • SQL Server
    • PostGres
    • Other Database
  • Oracle APEX
  • Report
  • Client
  • ECMAScript / Javascript
  • TypeScript
  • NodeJS
  • ReactJS
  • Flutter
  • AngularJS
  • HTML
  • CSS
  • Bootstrap
  • OS
    • Ubuntu
    • Solaris
    • Mac OS
  • VPS
  • Git
  • SAP
  • Amazon AWS
  • Khác
    • Chưa phân loại
    • Phần mềm & ứng dụng tiện ích
    • VirtualBox
    • VmWare
Các hàm xử lý chuỗi trong Oracle
  1. ASCII
  2. COALESCE
  3. UPPER
  4. LOWER
  5. INITCAP
  6. CHR
  7. CONCAT(Varchar2, Varchar2)
  8. CONCAT(Clob, Clob)
  9. INSTR
  10. INSTRB
  11. LENGTH
  12. LENGTHB
  13. LPAD
  14. LTRIM
  15. RTRIM
  16. TRIM
  17. SUBSTR
  18. SUBSTRB

1. ASCII

Hàm ASCII là hàm của Oracle PL/SQL trả về mã số đại diện cho một ký tự.

Cú pháp:ASCII( p_character )Tham số:p_character
  • Ký tự truyền vào để lấy ra mã số của nó. Nếu truyền vào nhiều hơn một ký tự, hàm ASCII sẽ trả về mã số của ký tự đầu tiên và bỏ qua các ký tự khác.
Xem thêm bảng mã ASCII:
Hệ cơ số 10 (Dec)Hệ cơ số 16 (Hex)Hệ cơ số 8 (Oct)Ký tựMô tảHệ cơ số 10 (Dec)Hệ cơ số 16 (Hex)Hệ cơ số 8 (Oct)Ký tựMô tả
000null6440100@
111start of heading6541101A
222start of text6642102B
333end of text6743103C
444end of transmission6844104D
555enquiry6945105E
666acknowledge7046106F
777bell7147107G
8810backspace7248110H
9911horizontal tab7349111I
10A12new line744A112J
11B13vertical tab754B113K
12C14new page764C114L
13D15carriage return774D115M
14E16shift out784E116N
15F17shift in794F117O
161020data link escape8050120P
171121device control 18151121Q
181222device control 28252122R
191323device control 38353123S
201424device control 48454124T
211525negative acknowledge8555125U
221626synchronous idle8656126V
231727end of trans. block8757127W
241830cancel8858130X
251931end of medium8959131Y
261A32substitute905A132Z
271B33escape915B133[
281C34file separator925C134\
291D35group separator935D135]
301E36record separator945E136^
311F37unit separator955F137_
322040space9660140`
332141!9761141a
342242"9862142b
352343#9963143c
362444$10064144d
372545%10165145e
382646&10266146f
392747'10367147g
402850(10468150h
412951)10569151i
422A52*1066A152j
432B53+1076B153k
442C54,1086C154l
452D55-1096D155m
462E56.1106E156n
472F57/1116F157o
483060011270160p
493161111371161q
503262211472162r
513363311573163s
523464411674164t
533565511775165u
543666611876166v
553767711977167w
563870812078170x
573971912179171y
583A72:1227A172z
593B73;1237B173{
603C74<1247C174|
613D75=1257D175}
623E76>1267E176~
633F77?1277F177DEL

2. COALESCE

Hàm COALESCE trả về biểu thức đầu tiên khác null trong danh sách. Nếu tất cả các biểu thức trong danh sách đánh giá đều NULL, thì hàm COALESCE sẽ trả về NULL.Cú pháp:COALESCE( p_expression1, p_expression2, ... p_expressionN )Tham số:
  • p_expression1, p_expression2, .. p_expressionN
  • Các biểu thức để kiểm tra khác null.
Ví dụ:-- --> 'Abc' Select COALESCE(null, 'Abc', '123') as Column1 from dual; -- --> 'Aaa' Select COALESCE('Aaa', null, '345') as Column1 from dual; -- --> 'Sss' Select COALESCE(null, null, null, 'Sss') as Column1 from dual;

3. UPPER

Hàm UPPER sẽ chuyển tất cả các chữ trong p_string thành chữ hoaCú pháp:UPPER( p_string )Tham số:p_string
  • Là chuỗi (string) sẽ được chuyển đổi thành chữ hoa.
Ví dụ:-- --> TOM CAT Select Upper('Tom Cat') From Dual; -- --> TOM CAT Select Upper('tom cat') From Dual;

4. LOWER

Hàm LOWER chuyển đổi tất cả các chữ trong p_string thành chữ thường.Cú pháp:LOWER( p_string )Tham số:p_string
  • Chuỗi (string) sẽ được chuyển thành chữ thường.
Ví dụ:-- --> tom cat Select Lower('Tom Cat') From Dual; -- --> tom cat Select Lower('tom cat') From Dual;

5. INITCAP

Hàm INITCAP trả về một chuỗi ký tự với các chữ cái đầu tiên của mỗi từ được chuyển đổi thành chữ hoa (Cũng được gọi là "title case"). Tất cả các chữ khác trong chuỗi sẽ được chuyển thành chữ thường. Các từ được ngăn cách nhau bởi dấu trắng (white space) (spaces, tabs, carriage returns, formfeeds, vertical-tabs, newlines) hoặc các ký tự không phải là chữ và số.Cú pháp:INITCAP( p_string )Tham số:p_string
  • Chuỗi (string) tham số mà toàn bộ các ký tự đầu tiên của mỗi từ sẽ chuyển thành chữ hoa, và các chữ còn lại trong từ sẽ chuyển thành chữ thường.
Ví dụ:-- --> Tom Cat Select Initcap('TOM CAT') From Dual; -- --> Tom Cat Select Initcap('tom cat') From Dual;

6. CHR

Hàm CHR trả về ký tự ASCII tương ứng với giá trị được truyền vào tham số cho nó. Nếu chỉ định thêm NCHAR_CS, nó sẽ trả về ký tự tương ứng theo mã của một quốc gia nào đó.Cú pháp:CHR( p_number ) CHR( p_number using nchar_cs)Tham số:p_number
  • Số được truyền vào để lấy ra ký tự tương ứng.
Ví dụ:-- --> @ Select chr(64) From dual; -- --> A Select chr(65) From dual; -- --> â Select chr(50082) From dual; -- --> 쎢 Select chr(50082 using nchar_cs) From dual;

7. CONCAT(Varchar2, Varchar2)

Hàm CONCAT cho phép bạn nối 2 string với nhau.Cú pháp:CONCAT( p_string1, p_string2 )Tham số:p_string1
  • string đầu tiên dùng để nối.
p_string2
  • string thứ 2 dùng để nối.
Ví dụ:-- --> Tom Cat Select Concat('Tom ', 'Cat') From dual;

8. CONCAT(Clob, Clob)

Hàm CONCAT cho phép bạn nối 2 chuỗi với nhau.Cú pháp:CONCAT( p_string1, p_string2 )
  • CONCAT(CLOB, NCLOB) returns NCLOB
  • CONCAT(NCLOB, NCHAR) returns NCLOB
  • CONCAT(NCLOB, CHAR) returns NCLOB
  • CONCAT(NCHAR, CLOB) returns NCLOB
Tham số:p_string1
  • string đầu tiên để nối
p_string2
  • string thứ hai để nối.
Ví dụ:Declare C1 Clob := To_Clob('Tom '); C2 Clob := To_Clob('Cat'); C3 Clob; C4 Clob; Begin Select Concat(C1 ,C2) Into C3 From Dual; ---- -- --> Tom Cat Dbms_Output.Put_Line(C3); ---- C4 := Concat(C1 ,C2); -- --> Tom Cat Dbms_Output.Put_Line(C4); End;

9. INSTR

Hàm INSTR trả về vị trí của một chuỗi con trong một chuỗi cho trước.Cú pháp:INSTR( p_string, p_substring [, p_start_position [, p_occurrence ] ] )p_string
  • Tìm trên chuỗi này. p_string có thể là CHAR, VARCHAR2, NCHAR, NVARCHAR2, CLOB, hoặc NCLOB.
p_substring
  • Chuỗi con sẽ tìm trong p_string. p_substring có thể là CHAR, VARCHAR2, NCHAR, NVARCHAR2, CLOB, hoặc NCLOB.
p_start_position
  • Tham số không bắt buộc. Là vị trí bắt đầu tìm kiếm trong p_string. Nếu không sử dụng tham số này, mặc định nó là 1. Vị trí đầu tiên trong string là 1. Nếu p_start_position có giá trị âm, Hàm INSTR sẽ đếm ngược p_start_position ký tự từ cuối chuỗi, và tìm kiếm tiếng tới đầu của chuỗi.
p_occurrence
  • Tham số không bắt buộc. Đếm lần xuất hiện thứ p_occurrence của p_substring, nếu không sử dụng tham số này, mặc định nó là 1.

Nếu không tìm thấy p_substring ở trong p_string, hàm INSTR sẽ trả về 0.

Ví dụ:-- --> 14 Select Instr('Corporate Floor', 'or', 5, 2) as Column1 from dual; -- --> 5 Select Instr('Corporate Floor', 'or', -10) as Column1 from dual;Xem thêm:
  • #regexp_instr

10. INSTRB

Hàm INSTRB trả về vị trí của chuỗi con trong một chuỗi cho trước, sử dụng các byte thay vì các ký tự.Cú pháp:INSTRB (p_string , p_substring [, p_start_position [, p_occurrence]])Hàm INSTRB trả về vị trí tìm thấy p_substring trong p_string, sử dụng cách tìm theo byte thay vì tìm theo ký tự.Tham số:p_string
  • Tìm kiếm trong chuỗi này.
p_substring
  • Chuỗi sẽ tìm
p_start_position
  • Một số nguyên khác 0 chỉ định vị trí byte sẽ bắt đầu tìm kiếm. Nếu p_start_position có giá trị âm, thì hàm INSTRB sẽ tìm kiếm ngược từ cuối chuỗi. Giá trị mặc định của vị trí là 1, có nghĩa là chức năng bắt đầu tìm kiếm tại các byte đầu tiên của chuỗi.
p_occurrence
  • Một số nguyên chỉ định số lần xuất hiện của chuỗi cần tìm. Giá trị của nó phải là số dương. Các giá trị mặc định của p_occurrence là 1, có nghĩa là tìm kiếm vị trí xuất hiện đầu tiên của chuỗi cần tìm.

Nếu không tìm thấy p_substring ở trong p_string, hàm INSTRB sẽ trả về 0.

-- --> 6 Select Instrb('Tiếng Việt', 'n') from dual; -- --> 11 Select Instrb('Tiếng Việt', 'ệ' ,5) from dual;Xem thêm:
  • LENGTHB
  • INSTR

11. LENGTH

Cú pháp:LENGTH( p_string )Tham số:p_string (CHAR, VARCHAR2, NCHAR, NVARCHAR2, CLOB, or NCLOB)
  • Là chuỗi các ký tự, cần tìm kiếm độ dài. Nếu p_stringNULL hoặc rỗng, hàm LENGTH sẽ trả về NULL.
Ví dụ:-- --> 7 Select Length('Tom Cat') As Column1 From Dual;

12. LENGTHB

Hàm LENGTHB trả về độ dài của một chuỗi, sử dụng cách đếm số byte thay vì đếm số ký tự.Cú pháp:LENGTHB( p_string )Tham số:p_string (CHAR, VARCHAR2, NCHAR, NVARCHAR2)
  • string cần kiểm tra độ dài (theo bytes).
Ví dụ:-- Null - Null Select Lengthb(Null) Column1 ,Lengthb('') Column2 From Dual; -- 7 Select Lengthb('Tom Cat') Column1 From dual; -- 2 Select Lengthb('Â') As Column1 From Dual;-- length of characters -- --> 10 Select Length('Tiếng Việt') from dual; -- length of bytes -- --> 14 Select Lengthb('Tiếng Việt') from dual;

13. LPAD

Hàm LPAD thêm vào bên trái chuỗi một tập hợp các ký tự cho trước.Cú pháp:LPAD( p_string, p_padded_length [, p_pad_string] )Tham số:p_string
  • string sẽ được đệm thêm các ký tự vào bên trái nó.
p_padded_length
  • Độ dài của string sau khi được đệm thêm vào. Nếu p_padded_length nhỏ hơn độ dài của string ban đầu (p_string), hàm LPAD sẽ cắt cụt string ban đầu, bỏ bên phải, để có được độ dài p_padded_length.
p_pad_string
  • Tham số không bắt buộc. Đây là string dùng để đệm vào bên trái của p_string. Nếu tham số này không được sử dụng, hàm LPAD sẽ đệm vào các khoảng trắng vào bên trái của p_string.
Ví dụ:-- 00123 Select Lpad('123', 5, '0') From Dual; -- 12345 Select Lpad('1234567', 5, '0') From Dual; -- ' Tom' Select Lpad('Tom', 10) From Dual; -- 'To' Select Lpad('Tom', 2) From Dual;

14. LTRIM

Hàm LTRIM sẽ loại bỏ các khoảng trắng bên trái (leading spaces) của một string ban đầu. Ký tự khoảng trắng là mặc định để loại bỏ, tuy nhiên bạn có thể chỉ định các ký tự để loại bỏ. Các ký tự được chỉ định là các chuỗi chữ ('A', 'm',..) hoặc CHR tương đương. Ví dụ 'CHR(112)', 'CHR(68)'. Hàm LTRIM trả về kiểu VARCHAR2.Cú pháp:LTRIM( p_string [, p_trim_string] )Tham số:p_string
  • string sẽ được loại bỏ các ký tự bên trái của nó.
p_trim_string
  • Tham số không bắt buộc. Là chuỗi sẽ được loại bỏ ở bên trái của p_string. Nếu tham số này không được sử dụng, hàm LTRIM sẽ loại bỏ các ký tự trắng ra khỏi bên trái của p_string.
Ví dụ:-- --> TOM Select LTRIM(' TOM') From dual; -- --> 789 Select LTRIM('000789', '0') From Dual; -- --> ABC01 Select LTRIM('0101ABC01', '01') From dual; -- --> 4210ABC Select LTRIM('34210ABC', '0123') From dual;

15. RTRIM

Hàm RTRIM sẽ loại bỏ các khoảng trắng bên phải (trailing spaces) của một string ban đầu. Ký tự khoảng trắng là mặc định để loại bỏ, tuy nhiên bạn có thể chỉ định các ký tự để loại bỏ. Các ký tự được chỉ định là các chuỗi chữ ('A', 'm',..) hoặc CHR tương đương: 'CHR(112)', 'CHR(68)'. Hàm RTRIM trả về kiểu VARCHAR2.Cú pháp:RTRIM( p_string [, trim_string ] )Tham sốp_string
  • string sẽ được loại bỏ các ký tự bên phải của nó.
p_trim_string
  • Tham số không bắt buộc. Là chuỗi sẽ được loại bỏ ở bên phải của p_string. Nếu tham số này không được sử dụng, hàm RTRIM sẽ loại bỏ các ký tự trắng ra khỏi bên phải của p_string.
Ví dụ:-- --> TOM Select RTRIM('TOM ') From dual; -- --> 000789 Select RTRIM('00078900', '0') From Dual; -- --> 0101ABC Select RTRIM('0101ABC0101', '01') From dual; -- --> ABC34 Select RTRIM('ABC34210', '0123') From dual;

16. TRIM

Hàm TRIM sẽ loại bỏ các khoảng trắng bên trái (leading spaces) và khoảng trắng bên phải (trailing spaces) của một string ban đầu. Ký tự khoảng trắng là mặc định để loại bỏ, tuy nhiên bạn có thể chỉ định các ký tự để loại bỏ. Các ký tự được chỉ định là các chuỗi chữ ('A', 'm',..) hoặc CHR tương đương: 'CHR(112)', 'CHR(68)'. Hàm TRIM trả về kiểu VARCHAR2.Cú pháp:TRIM( [ [ LEADING | TRAILING | BOTH ] p_trim_character FROM ] p_string )Tham số:LEADING
  • Hàm sẽ loại bỏ p_trim_character ở phía bên trái của p_string.
TRAILING
  • Hàm sẽ loại bỏ p_trim_character ở phía sau của p_string.
BOTH
  • Hàm sẽ loại bỏ p_trim_character ở phía trước và phía sau p_string.
p_trim_character
  • Các ký tự sẽ được loại bỏ khỏi p_string. Nếu tham số này không được sử dụng, hàm TRIM sẽ loại bỏ các khoảng trắng ra khỏi p_string.
p_string
  • Là chuỗi sẽ được loại bỏ một số ký tự.
Ví dụ:-- --> TOM Select TRIM(' TOM ') From dual; -- --> 78900 Select TRIM(Leading '0' from '00078900') From Dual; -- --> 001ABC Select TRIM(Trailing '0' from '001ABC00') From dual; -- --> ABC21 Select TRIM(Both '0' from '00ABC21000' ) From dual;

17. SUBSTR

Hàm SUBSTR (Hoặc SUBSTRING) cho phép bạn trích xuất một phần của một chuỗi (một chuỗi con) từ một chuỗi kí tự.Cú pháp:SUBSTR( p_string, p_start_position [, p_length ] )Tham số:p_string
  • string nguồn.
p_start_position
  • Vị trí bắt đầu trích ra chuỗi con. Mặc định là 1.
p_length
  • Tham số không bắt buộc. Nó là số ký tự sẽ được trích ra. Nếu tham số này không được sử dụng nó, hàm SUBSTR sẽ trả về chuỗi con từ vị trí p_start_position tới cuối của chuỗi p_string.
Nếu p_start_position là 0, hàm SUBSTR coi như p_start_position có giá trị đó là 1 (Vị trí đầu tiên trong chuỗi p_string).Nếu p_start_position là số âm, hàm SUBSTR sẽ bắt đầu từ cuối của p_string, đếm ngược lại p_start_position ký tự.Nếu p_length là số âm, hàm SUBSTR sẽ trả về giá trị NULL.
-- 'is is' Select substr('this is a text message',3,5) Column1 from dual; -- 'is is a text message' Select substr('this is a text message',3) Column1 from dual; -- 'messa' Select substr('this is a text message',-7,5) Column1 from dual; -- 'message' Select substr('this is a text message',-7) Column1 from dual; -- 'age' Select substr('this is a text message',-3, 5) Column1 from dual; -- null Select substr('this is a text message',-3, -5) Column1 from dual;

18. SUBSTRB

Trả về một chuỗi con bằng cách đếm các byte, thay vì đếm các ký tự.Cú pháp:SUBSTRB( p_string, p_start_position [, p_length ] )Tham số:p_string
  • Chuỗi nguồn.
p_start_position
  • Vị trí bắt đầu để trích ra chuỗi con. Mặc định là 1.
p_length
  • Tham số không bắt buộc. Nó là số byte sẽ được trích ra. Nếu tham số này không được sử dụng, hàm SUBSTRB sẽ trả về chuỗi con bắt đầu từ p_start_position tới cuối của chuỗi p_string.
Ví dụ:-- ây là Select Substrb('Đây là Tiếng Việt', 3, 7) from dual; -- y là Ti Select Substr('Đây là Tiếng Việt', 3, 7) from dual;

Các hướng dẫn về cơ sở dữ liệu Oracle

  • Cài đặt PL/SQL Developer trên Windows
  • Cơ sở dữ liệu Oracle mẫu để học SQL
  • Hướng dẫn học SQL cho người mới bắt đầu với Oracle
  • Cài đặt cơ sở dữ liệu Oracle 11g trên Windows
  • Cài đặt cơ sở dữ liệu Oracle 12c trên Windows
  • Cài đặt Oracle Client trên Windows
  • Tạo Oracle SCOTT Schema
  • Cơ sở dữ liệu mẫu
  • Cấu trúc database và tính năng đám mây trong Oracle 12c
  • Import và Export cơ sở dữ liệu Oracle
  • Các hàm xử lý chuỗi trong Oracle
  • Phân tách một chuỗi ngăn cách bởi dấu phẩy và chuyển vào mệnh đề IN của câu lệnh Select trong Oracle
  • Truy vấn phân cấp trong Oracle
  • Hướng dẫn và ví dụ Oracle Database Link và Synonym
  • Hướng dẫn lập trình Oracle PL/SQL
  • Phân tích XML trong Oracle PL/SQL
  • Kiểm soát chuẩn hệ thống database Oracle (Audit Standard)
  • Kiểm soát bắt buộc và kiểm soát quản trị trong Oracle
  • Tạo và quản lý Oracle Wallet
Show More

Các hướng dẫn về cơ sở dữ liệu Oracle

  • Cài đặt PL/SQL Developer trên Windows
  • Cơ sở dữ liệu Oracle mẫu để học SQL
  • Hướng dẫn học SQL cho người mới bắt đầu với Oracle
  • Cài đặt cơ sở dữ liệu Oracle 11g trên Windows
  • Cài đặt cơ sở dữ liệu Oracle 12c trên Windows
  • Cài đặt Oracle Client trên Windows
  • Tạo Oracle SCOTT Schema
  • Cơ sở dữ liệu mẫu
  • Cấu trúc database và tính năng đám mây trong Oracle 12c
  • Import và Export cơ sở dữ liệu Oracle
  • Các hàm xử lý chuỗi trong Oracle
  • Phân tách một chuỗi ngăn cách bởi dấu phẩy và chuyển vào mệnh đề IN của câu lệnh Select trong Oracle
  • Truy vấn phân cấp trong Oracle
  • Hướng dẫn và ví dụ Oracle Database Link và Synonym
  • Hướng dẫn lập trình Oracle PL/SQL
  • Phân tích XML trong Oracle PL/SQL
  • Kiểm soát chuẩn hệ thống database Oracle (Audit Standard)
  • Kiểm soát bắt buộc và kiểm soát quản trị trong Oracle
  • Tạo và quản lý Oracle Wallet
Show More

Các bài viết mới nhất

  • Xử lý lỗi 404 trong Flutter GetX
  • Ví dụ đăng nhập và đăng xuất với Flutter Getx
  • Hướng dẫn và ví dụ Flutter NumberTextInputFormatter
  • Hướng dẫn và ví dụ Flutter multi_dropdown
  • Hướng dẫn và ví dụ Flutter flutter_form_builder
  • Hướng dẫn và ví dụ Flutter GetX obs Obx
  • Hướng dẫn và ví dụ Flutter GetX GetBuilder
  • Từ khoá part và part of trong Dart
  • Hướng dẫn và ví dụ Flutter InkWell
  • Bài thực hành Flutter SharedPreferences
  • Hướng dẫn và ví dụ Flutter Radio
  • Hướng dẫn và ví dụ Flutter Slider
  • Hướng dẫn và ví dụ Flutter SkeletonLoader
  • Chỉ định cổng cố định cho Flutter Web trên Android Studio
  • Hướng dẫn và ví dụ Flutter SharedPreferences
  • Tạo Module trong Flutter
  • Flutter upload ảnh sử dụng http và ImagePicker
  • Bài thực hành Dart http CRUD
  • Hướng dẫn và ví dụ Flutter image_picker
  • Flutter GridView với SliverGridDelegate tuỳ biến
Show More
  • Các hướng dẫn về cơ sở dữ liệu Oracle

Từ khóa » Tách Chuỗi Trong Oracle