PostgreSQL
 sql >> Teknologi Basis Data >  >> RDS >> PostgreSQL

Istilah sintaks SQL untuk 'WHERE (col1, col2) <(val1, val2)'

Istilah pendek yang umum hanyalah "Nilai baris" . Atau "Perbandingan nilai baris" untuk operasi yang Anda tunjukkan. Fitur itu telah ada dalam standar SQL sejak SQL-92 (!). Postgres saat ini adalah satu-satunya RDBMS utama yang mendukungnya dalam semua aspek - terutama juga dengan dukungan indeks yang optimal.

Secara khusus, ekspresi (col1, col2) < (1, 2) hanyalah singkatan dari ROW(col1, col2) < ROW(1, 2) di Postgres. Ekspresi ROW(col1, col2) juga disebut konstruktor baris - seperti ARRAY[col1, col2] adalah konstruktor array.

Ini adalah singkatan dari ekspresi yang lebih verbose dan setara:

col1 < 1 OR (col1 = 1 AND col2 < 2)

... dan Postgres dapat menggunakan indeks pada (col1, col2) atau (col1 DESC, col2 DESC) untuk ini.

Dan terutama berbeda dari (!)

col1 < 1 AND  AND col2 < 2

Perhatikan contoh:(1,1) ...

Berikut pemaparan Markus Winand yang membahas fitur pagination secara detail:

"Paginasi dilakukan dengan cara PostgreSQL" di use-the-index-luke.com.

Perbandingan nilai baris dimulai pada halaman 20. Matriks dukungan yang saya rujuk ada di halaman 45.

Saya sama sekali tidak berafiliasi dengan sumber mana pun yang saya kutip.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. PostgreSQL:INSERT Serbaguna

  2. Lambat LEFT JOIN di CTE dengan interval waktu

  3. Bagaimana cara mengetahui apakah upsert adalah pembaruan dengan PostgreSQL 9.5+ UPSERT?

  4. Cara Memisahkan String di PostgreSQL

  5. Bagaimana Abs() Bekerja di PostgreSQL