Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Drugie zapytanie SELECT, jeśli pierwsze SELECT zwraca 0 wierszy

Jedną z opcji byłoby użycie UNION ALL z EXISTS :

SELECT * 
FROM proxies 
WHERE A='B'
UNION ALL
SELECT * 
FROM proxies 
WHERE A='C' AND NOT EXISTS (
    SELECT 1
    FROM proxies 
    WHERE A='B'
)

To zwróci wiersze z proxies tabela, w której A='B' jeśli istnieją. Jeśli jednak nie istnieją, wyszuka wiersze z A='C' .



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Kiedy powinienem używać transakcji MySQL?

  2. rzucić ciąg na czas sql

  3. Błąd podczas ustawiania wartości właściwości; zagnieżdżony wyjątek to org.springframework.beans.NotWritablePropertyException:

  4. Tabela nie ma klucza podstawowego

  5. Wyłącz ostrzeżenia i błędy w PHP i MySQL