Il problem statement è:Qual è la soluzione alla tredicesima parte del tutorial 'select from world' su sqlzoo?
Mettere i continenti giuste ...
- Oceania diventa Australasia
- Paesi in Eurasia e Turchia andare in Europa/Asia
- isole dei Caraibi che iniziano con 'B 'andare in Nord America, altre isole dei Caraibi andare in Sud America
Mostra il nome, il continente originale e il nuovo continente di tutti i paesi .
La mia soluzione:
SELECT name, continent,
CASE WHEN continent='Oceania' THEN 'Australasia'
WHEN continent IN ('Europe', 'Asia') THEN 'Europe/Asia'
WHEN name='Turkey' THEN 'Europe/Asia'
WHEN continent='Caribbean' AND name LIKE 'B%' THEN 'North America'
WHEN continent='Caribbean' AND name NOT LIKE 'B%' THEN 'South America'
ELSE continent END
FROM world
Il risultato mi da sqlzoo è "Risposta sbagliata Alcuni dei dati non è corretto."..
La domanda dice: 'Eurasia', la risposta dice' IN ('Europa', 'Asia') '. Personalmente, non pensavo che la Turchia contenesse alcun paese. – Jodrell
Sono d'accordo con @jodrell (cercando di prevedere quale sqlzoo anticipa come risposta corretta ...) La buona notizia è che il tuo SQL è solido al 100% e il problema è con le stringhe che hai bloccato lì che sqlzoo non ha piace. – JNevill
@Jodrell, l'ho provato ora, ma non funziona.La tabella originale non dovrebbe contenere "Eurasia" nella colonna del continente. – systemovich