Ja nu är det kört igen. Hur skriver man flera satser i en då man använder recordset?
EX (funkar ej):
"SELECT * FROM person WHERE namn=
SELECT namn FROM spelare WHERE alder>10"
Någon som har koll på det här med nästlade sql satser som kan hjälpa mig att uppnå det jag vill här??
Om du vill hämta första personen vars ålder är större än 10 så skall du skriva:
SELECT * FROM person WHERE namn =
(SELECT namn FROM spelare WHERE alder > 10)
Om du vill hämta ALLA som är över 10 så skriver du:
SELECT * FROM person WHERE namn IN
(SELECT namn FROM spelare WHERE alder > 10)
Det här stämmer inte, den enda skillnaden mellan att använda in eller = är att om subqueryn resulterar mer än en post så får man fel om man använder =. (Generellt sett så är det fel att prata om sista eller första posten i en tabell.)
Om någon DBMS inte beter sig så, så följer den inte ANSI SQL specifikationen.
------------------ essentitia preter non sans multiplicandum