Oracle Function: Hàm INSTR

Trong bài này sẽ hướng dẫn bạn cách sử dụng hàm INSTR trong Oracle, đây là hàm khá đặc biệt, nó dùng để kiểm tra xem chuỗi con có xuất hiện trong chuỗi cha không, nếu có thì trả về vị trí xuất hiện, nếu không thì trả về 0.

1. Hàm INSTR trong Oracle

Hàm INSTR sẽ trả về chuỗi con, vì vậy chúng ta phải truyền vào tối thiểu là 2 tham số. Dưới đây là cú pháp:

INSTR( string, substring [, start_position [, th_appearance ] ] )

Trong đó:

  • string là chuỗi cha
  • substring là chuỗi con
  • start_position là vị trí bắt đầu tìm, nếu không truyền vào thì nó sẽ lấy vị trí đầu tiên là số 1. Nếu bạn truyền vào số âm thì nó sẽ duyệt ngược từ cuối chuỗi.
  • nth_appearance là chọn số lần xuất hiện, nếu bạn ko truyền vào thì nó sẽ lấy lần đầu tiên.

Returns

Hàm này sẽ trả về vị trí xuất hiện của chuỗi con, nó phụ thuộc vào các tham số ở trên. 

Nếu tìm thấy thì sẽ trả về vị trí xuất hiện, vị trí đầu tiên là 1.

Nếu không tìm thấy thì sẽ trả về 0.

Oracle version

Hàm này sẽ hoạt động ở các version sau:

  • Oracle 12c, Oracle 11g, Oracle 10g, Oracle 9i, Oracle 8i

2. Ví dụ hàm INSTR trong Oracle

Công dụng của hàm này là giúp ta kiểm tra trong chuỗi cha có xuất hiện chuỗi con hay không, nếu có thì xuất hiện tại vị trí nào? Để hiểu rõ hơn thì mời các bạn tham khảo các ví dụ dưới đây.

INSTR('Tech on the net', 'e')
Result: 2   (the first occurrence of 'e')

INSTR('Tech on the net', 'e', 1, 1)
Result: 2   (the first occurrence of 'e')

INSTR('Tech on the net', 'e', 1, 2)
Result: 11  (the second occurrence of 'e')

INSTR('Tech on the net', 'e', 1, 3)
Result: 14  (the third occurrence of 'e')

INSTR('Tech on the net', 'e', -3, 2)
Result: 2

Trên là tất cả thông tin về cú pháp và ví dụ của hàm INSTR.

 

Nguồn: freetuts.net