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

Zaznacz, dopóki wiersze nie zostaną dopasowane w postgresql?

To, czego chcesz, to rodzaj warunku zatrzymania. O ile mi wiadomo, nie ma czegoś takiego w SQL, przynajmniej w dialekcie PostgreSQL.

To, co możesz zrobić, to użyć procedury PL/PgSQL do odczytania wierszy z kursora i zwrócenia ich do momentu spełnienia warunku zatrzymania. Nie będzie super szybko, ale będzie dobrze. To tylko FOR zapętlić zapytanie z wyrażeniem IF expression THEN exit; ELSE return next; END IF; . Nie jest wymagany żaden jawny kursor, ponieważ PL/PgSQL użyje go wewnętrznie, jeśli FOR zapętlić zapytanie.

Inną opcją jest utworzenie kursora i odczytanie z niego fragmentów wierszy w aplikacji, a następnie odrzucenie części ostatniego fragmentu po spełnieniu warunku zatrzymania.

Tak czy inaczej, kursor będzie tym, czego chcesz.

Nawiasem mówiąc, wyrażenie stop nie byłoby zbyt trudne do zaimplementowania w PostgreSQL. Musiałbyś zaimplementować nowy typ węzła wykonawczego, ale nowa obsługa CustomScan sprawi, że będzie to praktyczne w rozszerzeniu. Następnie po prostu oceniasz wyrażenie, aby zdecydować, czy kontynuować pobieranie wierszy.



  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:.psql_history do /dev/null

  2. Błąd podczas ustawiania właściwości konfiguracji bazy danych dla IDatabaseConnection (HSQLDB)

  3. Kontener Dockera dla Postgres 9.1 nie ujawnia portu 5432 hostowi

  4. Otrzymuję błąd, że nie można zapisać bloku .... pliku tymczasowego brak miejsca na urządzeniu ... za pomocą postgresql

  5. Jaki typ znacznika czasu wybrać w bazie danych PostgreSQL?