Oracle
 sql >> Teknologi Basis Data >  >> RDS >> Oracle

Pilih baris sampai kondisi terpenuhi

Gunakan sub-kueri untuk mencari tahu di titik mana Anda harus berhenti, lalu kembalikan semua baris dari titik awal Anda ke titik berhenti yang dihitung.

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

Catatan, ini mengasumsikan bahwa catatan terakhir selalu 'F'. Anda dapat menangani catatan terakhir menjadi 'T' menggunakan 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. beberapa dukungan database untuk kelas JPA yang sama

  2. Muat file teks sebagai gumpalan ke database

  3. SQL Memilih nilai MIN dari data baris dengan nilai nol

  4. Tabel Eksternal Oracle:Tata Letak File Datar Tingkat Lanjut

  5. Oracle REGEXP_SUBSTR | Ambil string di antara dua pembatas