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

SQL Giữa mệnh đề với các cột chuỗi

Biểu thức

name between 'A' and 'B'

tương đương với

name>='A' and name<='B'

Vì vậy 'Argentina' là> ='A' và <='B' và nó thỏa mãn điều kiện. Nhưng 'Bolivia' KHÔNG phải là <='B'. 'Bolivia'> 'B'. Nó không chỉ nhìn vào chữ cái đầu tiên:nó nhìn vào toàn bộ chuỗi. Đó chắc chắn là cách nó phải như vậy:nếu nó không làm điều này, sẽ không có cách nào để nói rằng bạn muốn một phạm vi bao gồm 'Smith' chứ không phải 'Smithers'.

Để đạt được những gì bạn muốn, bạn có thể nói:

substr(name,1,1) between 'A' and 'B'

hoặc:

name like 'A%' or name like 'B%'

hoặc:

name>='A' and name<'C'


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Chèn dữ liệu và đặt khóa ngoại với Postgres

  2. Sự khác biệt về dấu thời gian trong giờ cho PostgreSQL

  3. Cách sao lưu và khôi phục cơ sở dữ liệu PostgreSQL

  4. Truy vấn cho phần tử của mảng trong cột JSON

  5. Docker - Làm cách nào để chạy lệnh psql trong vùng chứa postgres?