sql >> Database teknologi >  >> RDS >> Mysql

Anden SELECT-forespørgsel, hvis første SELECT returnerer 0 rækker

En mulighed ville være at bruge UNION ALL med 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'
)

Dette vil returnere rækker fra proxies tabel hvor A='B' hvis de findes. Men hvis de ikke eksisterer, vil den søge efter disse rækker med A='C' .



  1. SQL-forespørgsel, der returnerer alle datoer, der ikke er brugt i en tabel

  2. Se lagret procedure/funktionsdefinition i MySQL

  3. Sådan tilføjes eller slettes kolonne ved at bruge GUI i SQL Server - SQL Server / T-SQL vejledning del 39

  4. tsql returnerer en tabel fra en funktion eller butiksprocedure