Oracle
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Oracle

Làm cách nào để đưa ra nhiều điều kiện trong toán tử LIKE?

Đây là cách sử dụng tốt bảng tạm thời.

CREATE TEMPORARY TABLE patterns (
  pattern VARCHAR(20)
);

INSERT INTO patterns VALUES ('ABC%'), ('XYZ%'), ('PQR%');

SELECT t.* FROM tbl t JOIN patterns p ON (t.col LIKE p.pattern);

Trong các mẫu ví dụ, không có cách nào col có thể khớp với nhiều mẫu, vì vậy bạn có thể chắc chắn rằng mình sẽ thấy từng hàng của tbl nhiều nhất một lần trong kết quả. Nhưng nếu các mẫu của bạn như vậy col có thể khớp với nhiều hơn một, bạn nên sử dụng DISTINCT công cụ sửa đổi truy vấn.

SELECT DISTINCT t.* FROM tbl t JOIN patterns p ON (t.col LIKE p.pattern);


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Từ Thủ tục đã lưu, trả về tham số OUT &con trỏ OUT &kết quả phân tích cú pháp (Oracle)

  2. RDLC LocalReport Xuất sang Excel thực sự chậm

  3. ORA-12505, TNS:người nghe hiện không biết về SID được cung cấp trong kết nối des

  4. MySQL COALESCE và Hàm NULLIF

  5. Cách trả lại danh sách các ngôn ngữ được hỗ trợ trong Oracle