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

Dikatakan saya tidak memiliki baris yang dipilih?

Ada beberapa cara untuk melakukannya:

Anda dapat menggunakan anti-gabung, seperti:

SELECT m.MEMBERID,
       m.LASTNAME,
       m.FIRSTNAME
  FROM MEMBERS m
  WHERE m.MEMBERID NOT IN (SELECT DISTINCT MEMBERID
                             FROM CURRENTLOAN
                           UNION ALL
                           SELECT DISTINCT MEMBERID
                             FROM HISTORY);

Cara lain (dan metode pilihan saya) untuk melakukan apa yang Anda inginkan adalah:

SELECT DISTINCT m.MEMBERID,
                m.LASTNAME,
                m.FIRSTNAME
  FROM MEMBERS m
  LEFT OUTER JOIN (SELECT DISTINCT MEMBERID
                     FROM (SELECT MEMBERID
                             FROM CURRENTLOAN
                           UNION ALL
                           SELECT MEMBERID
                             FROM HISTORY)) u
    ON u.MEMBERID = m.MEMBERID
  WHERE u.MEMBERID IS NULL;

Namun, mengingat data yang Anda perlihatkan kueri ini, serta kueri asli Anda, harus mengembalikan nol baris. SQLFiddle di sini

Perhatikan bahwa jika Anda mengomentari pinjaman saat ini kepada anggota 004, maka "Joe Brown" dikembalikan SQLFiddle di sini

Semoga berhasil.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Oracle.ManagedDataAccess.EntityFramework - ORA-01918:pengguna 'dbo' tidak ada

  2. Apa perbedaan antara variabel Bind PLSQL dan variabel Host?

  3. Apa praktik terbaik untuk memigrasi database Oracle 10g ke Microsoft SQL 2008 R2? Aplikasi menggunakan Hibernate

  4. Oracle - Tidak dapat menggunakan tanda * dengan kolom lain di klausa pilih

  5. Temukan tahun berturut-turut maksimum untuk setiap ID dalam tabel (Oracle SQL)