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

Termin składni SQL dla „GDZIE (col1, col2) <(val1, val2)”

Popularny termin krótkoterminowy to po prostu „Wartości wierszy” . Lub „Porównanie wartości wierszy” dla operacji, którą demonstrujesz. Ta funkcja jest w standardzie SQL od SQL-92 (!). Postgres jest obecnie jedynym głównym systemem RDBMS, który obsługuje go we wszystkich aspektach - zwłaszcza z optymalną obsługą indeksów.

W szczególności wyrażenie (col1, col2) < (1, 2) to po prostu skrót dla ROW(col1, col2) < ROW(1, 2) w Postgres.Wyrażenie ROW(col1, col2) jest również nazywany konstruktorem wierszy - podobnie jak ARRAY[col1, col2] jest konstruktorem tablicy.

Jest dogodnie skrótem od bardziej szczegółowego, równoważnego wyrażenia:

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

... a Postgres może używać indeksu w (col1, col2) lub (col1 DESC, col2 DESC) w tym celu.

I szczególnie różni się od (!)

col1 < 1 AND  AND col2 < 2

Rozważ przykład:(1,1) ...

Oto prezentacja Markusa Winanda, która szczegółowo omawia funkcję paginacji:

„Pagination done the PostgreSQL way” na use-the-index-luke.com.

Porównanie wartości wierszy zaczyna się na stronie 20. Macierz podpór, o której mówiłem, znajduje się na stronie 45.

Nie jestem w żaden sposób powiązany z żadnym z cytowanych przeze mnie źródeł.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. instalacja postgres inicjalizacja klastra bazy danych nie powiodła się ( Postgresql wersja 9.4.4 )

  2. Zbędne dane w wyciągach aktualizacyjnych

  3. Błąd Postgres SSL SYSCALL:wykryto EOF za pomocą Pythona i psycopg

  4. Kolumna tabeli automatycznego przyrostu

  5. Wybierz (pobierz) wszystkie rekordy z wielu schematów za pomocą Postgres