Oracle
 sql >> Baza danych >  >> RDS >> Oracle

Wybierz wiersze do spełnienia warunku

Użyj podzapytania, aby dowiedzieć się, w którym momencie powinieneś się zatrzymać, a następnie zwróć wszystkie wiersze od punktu początkowego do obliczonego punktu zatrzymania.

SELECT
  *
FROM
  yourTable
WHERE
      id >= 4
  AND id <= (SELECT MIN(id) FROM yourTable WHERE b = 'F' AND id >= 4)

Uwaga, zakłada się, że ostatnim rekordem jest zawsze „F”. Możesz poradzić sobie z ostatnim rekordem będącym „T” za pomocą COALESCE .

SELECT
  *
FROM
  yourTable
WHERE
      id >= 4
  AND id <= COALESCE(
              (SELECT MIN(id) FROM yourTable WHERE b = 'F' AND id >= 4),
              (SELECT MAX(id) FROM yourTable                          )
            )



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Próba utworzenia pakietu - błąd PLS-00330

  2. Podziel wartości oddzielone przecinkami w kolumnie w wierszu za pomocą zapytania Oracle SQL

  3. Wyrażenie tabeli Oracle na odbiór i zamówienie

  4. Połącz dwa stoły za pomocą kolumny z wieloma wpisami dla drugiego stołu

  5. Nierozpoznana opcja:-MaxMetaspaceSize=256m