sql >> Databáze >  >> RDS >> Oracle

Napište dotaz SQL, abyste našli studenty, kteří jsou zapsáni na jednotky nabízené v určité lokalitě?

Počítače jsou extrémně přesné. Spustí kód přesně tak, jak ho napíšete. Váš dotaz obsahuje tuto klauzuli WHERE:

location like '%burwood%'

Pokud se však pozorně podíváte na data v course zjistíte, že hodnota v location je Burwood . 'Burwood' nerovná se 'burwood' kvůli tomu rozdílu v případě úvodního písmene.

Výsledky byste dostali, kdybyste svou klauzuli WHERE napsali takto:

location like '%urwood%'

Vždy je však lepší filtrovat pomocí filtru rovnosti:

 select s1.student_id
        , s1.student_fname
        , s1.student_fname
        , c.course
 from course c
      join student2 s2 on s2.course_id = c.course_id
      join student1 s1 on s1.student_id = s2.student_id
 where c.location = 'Burwood';


  1. mysql_fetch_array přeskakování prvního řádku

  2. Mám aplikaci pro Android, která načítá data ze sqlite a zobrazuje data v BaseAdapteru .. jaký je nejlepší způsob?

  3. Optimalizujte dotaz GROUP BY pro načtení nejnovějšího řádku na uživatele

  4. Výběr N řádků v SQL Server