Klarade millennium-buggen
|
|
Reg.datum: Aug 2005
Inlägg: 5 166
|
|
Klarade millennium-buggen
Reg.datum: Aug 2005
Inlägg: 5 166
|
Om du kör subqueryn för sig och byter h.id mot 1 respektive 2 vid olika körningar så kan du se att den tar fram det största/senaste datumet för alla inläggen i just den tråden:
SELECT Max(Date) FROM forum_posts WHERE thread_id = 1
respektive :
SELECT Max(Date) FROM forum_posts WHERE thread_id = 2
när jag i Subqueryn skriver ... FROM forum_heads h ... så sätter jag upp ett alias som heter "h" som gör att de blir kortare att skriva. och då kan jag skriva "h.id" i stället för "forum_heads.id".
h.id kopplar dynamiskt ihop den inre subqueryn med varje rad i den yttre SQL-queryn där vi satt ett alias på forum_heads till p (jag kallade den tabellen felaktigt för forum_threads i några tidigare inlägg).
Du kan inte nå den inre subqueryn på samma sätt från den yttre utan det funkar bara inifrån och ut så att säga. Detta gör att man kan skriva mycket koplexa subqueryn som var och en är isolerad från den yttre SQL-frågan, vilket blir mycket smidigt om man vill göra riktigt komplexa subqueryn.
|