09. september 2003 - 13:20Der er
19 kommentarer og 1 løsning
Fejl i syntaks
Hvorfor er der SQL syntaks fejl i følgende?
SELECT * FROM course WHERE teacherID = (SELECT initials FROM teacher WHERE firstname = 'Viggo');
------------------ ERROR 1064: You have an error in your SQL syntax. Check the manual that corresp onds to your MySQL server version for the right syntax to use near 'SELECT initi als FROM teacher WHERE firstname = 'Viggo')' at lin Query OK, 0 rows affected (0.00 sec)
Denne side indeholder artikler med forskellige perspektiver på Identity & Access Management i private og offentlige organisationer. Artiklerne behandler aktuelle IAM-emner og leveres af producenter, rådgivere og implementeringspartnere.
Hmmm som jeg læser arne_v's link så kan man ikke lave subqueries??? Hvis det er rigtigt forstået så er man da på den hvis man skal lave en forespørgsel som jeg vil...
jinxit -> det kan jeg også godt (*kan bare ikke overskue at omskeive alle mine queries da nogle af dem er RET lange - desuden har jeg ikke adgang til DB før imorgen :-)*)
arne_v -> hvordan mener du? Vil SQL'en ikke bliv opfattet på samme måde?
Derfor er der en del SQL som virker på andre database der ikke virker med MySQL.
Man kan så enten omskrive sin SQL hvis det er muligt (det er det ikke altid) eller flytte logik fra SQL til applikation (i.s.f. en query som returnerer det man vil have, så laver man f.eks. flere queries og lader applikationen processe data).
jinxit -> jepsen din omskrivning virker perfekt :-), men for at være ærlig så er jeg ikke helt med på teorien. (måske er det mig som stener) Jeg har også følgende query: "SELECT DISTINCT * FROM pupil WHERE id = (SELECT pupil_id FROM pupil_course WHERE courseID = (SELECT courseID FROM course WHERE teacherID = (SELECT initials FROM teacher WHERE firstname = 'Viggo')));" hvordan skal det så skrives???
arne_v -> jeg har lige prøvet at lave et nested query igennem phpadmin (mysql 4.0) det virker (???)
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.