PostgreSQL
 sql >> Baza danych >  >> RDS >> PostgreSQL

Klauzula SQL Between z kolumnami stringów

Wyrażenie

name between 'A' and 'B'

jest odpowiednikiem

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

Tak więc 'Argentyna' to>='A' i <='B' i spełnia warunek. Ale 'Boliwia' NIE jest <='B'. „Boliwia”> „B”. Nie patrzy tylko na pierwszą literę:patrzy na cały ciąg. I z pewnością tak powinno być:gdyby tego nie zrobił, nie byłoby sposobu, by powiedzieć, że chciałeś zakres obejmujący „Smith”, ale nie „Smithers”.

Aby osiągnąć to, czego chcesz, możesz powiedzieć:

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

lub:

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

lub:

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. Tabele tymczasowe PostgreSQL

  2. Najlepszy sposób na liczenie rekordów w dowolnych odstępach czasu w Rails+Postgres

  3. Spowodowane przez:java.lang.NoSuchMethodError:org.postgresql.core.BaseConnection.getEncoding()Lorg/postgresql/core/Encoding;

  4. Wydajność OLTP od PostgreSQL 8.3

  5. ClusterControl — zaawansowane zarządzanie kopiami zapasowymi — PostgreSQL