Guide for Cavallers i Dracs 1: Primeres consultes
Com abordar aquest problema
Primeres consultes sobre una sola taula: mostrar-ho tot, triar columnes, filtrar files amb WHERE i ordenar amb ORDER BY. La BD té dues taules, Knights (cavallers) i Dragons (dracs): mira a l'esquema quina té cada columna. Cada pregunta té el seu propi quadre de text: escriu-hi una sola consulta SELECT (sense res més) per a cada pregunta.
La sintaxi que necessites
SELECT columnes -- o bé * per a totes
FROM taula
WHERE condició
ORDER BY columna [ASC | DESC];
*vol dir "totes les columnes de la taula", en l'ordre en què estan definides.WHEREfiltra files; els textos es comparen entre cometes simples ('text').ORDER BYordena;ASCés el valor per defecte (de més petit a més gran, i en dates de més antiga a més recent) iDESCés l'invers.
Pregunta per pregunta
Pregunta 1. Vol totes les columnes i totes les files d'una taula, sense filtre. Hi ha un símbol que ho fa en una sola paraula.
Pregunta 2. Dues columnes, en l'ordre de l'enunciat, i un filtre de text sobre el color. Fixa't en quina de les dues taules hi ha els dracs, i escriu el color en anglès i amb la majúscula inicial, tal com està a les dades.
Pregunta 3. Dues columnes de la taula de cavallers, sense filtre, ordenades per una tercera columna que no cal mostrar. Sí: pots ordenar per una columna que no surt al SELECT. Pensa quin sentit d'ordenació posa primer el més antic.
Un exemple semblant
El nom i el cognom de les cavalleres (gènere 'F'), ordenades per cognom:
SELECT Firstname, Lastname
FROM Knights
WHERE Gender = 'F'
ORDER BY Lastname;
Els dracs que han fet més de 500 víctimes, del que més en té al que menys:
SELECT Name, KnownVictims
FROM Dragons
WHERE KnownVictims > 500
ORDER BY KnownVictims DESC;
Paranys habituals:
SELECT *només és correcte quan et demanen totes les columnes; en la resta de casos el nombre de columnes no coincidiria.- Els valors de text distingeixen el que està escrit a la BD:
'green'no és'Green'. - Cometes simples per als textos. Si un nom de columna et dona problemes, revisa l'esquema: aquí es diuen
Firstname,Nickname,BirthDate... - El jutge no compara l'ordre de les files ni els noms de les columnes, però sí quantes columnes hi ha i en quin ordre.