Un'opzione potrebbe essere quella di utilizzare UNION ALL
con 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'
)
Questo restituirà le righe dai proxies
tabella dove A='B'
se esistono. Tuttavia, se non esistono, cercherà quelle righe con A='C'
.