Oracle
 sql >> база данни >  >> RDS >> Oracle

Oracle SQL - IN Клауза показва всички записи, дадени в IN състояние, дори когато данните не присъстват в таблицата

Нуждаете се от производна таблица, съдържаща всички възможности. Или имате такава, като градска маса, и тогава можете да направите:

SELECT t.customer_id,s.city
FROM city_table s
LEFT JOIN customer t
 ON(s.id = t.city) 
WHERE s.city IN ('abc', 'def', 'ghi')

Или сами генерирайте стойностите:

SELECT t.customer_id,s.city
FROM (SELECT 'abc' as id FROM DUAL
      UNION ALL 
      SELECT 'def' FROM DUAL
      UNION ALL
      SELECT 'ghi' FROM DUAL) s
LEFT JOIN customer t
 ON(s.id = t.city) 
WHERE s.id IN('abc', 'def', 'ghi')



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Намерете и заменете низ в BLOB за работа или Excel файл

  2. Как да използвам повторно пропуските в последователността на Oracle в колоната с първичен ключ?

  3. Получете свободни часове за класната стая между диапазона от дати и време

  4. Свързване на таблици с LIKE (SQL)

  5. Искам да предам променлив аргумент към външен SQL файл (PL/SQL с SQL*Plus)