WiesneRobert Geschrieben 6. Mai 2008 Geschrieben 6. Mai 2008 Während der Prüfungsvorbereitung mit einigen Kollegen haben wir über folgenden Sachverhalt diskutiert. Und zwar, ob bei einem SQL Select alle Relationen, die z.B. nur zum Vergleich benutzt werden, in die FROM müssen. SELECT * FROM answers WHERE answers.question_id = questions.id; SELECT * FROM answers, questions WHERE answers.question_id = questions.id Durch die Erfahrung von Aufgaben aus der Prüfungs-Vorbereitung würde ich sagen, dass beide Lösungen funktionieren! Jedoch klappt es bei einem test mit mySQL nur mit der Zweiten Methode... meine Frage: bestehen Unterschiede zwischen mySQL und SQL bezüglich der "FROM-Syntax" oder ist es immer zwingen notwenig alle Relationen anzugeben. Zitieren
Amstelchen Geschrieben 6. Mai 2008 Geschrieben 6. Mai 2008 meine Frage: bestehen Unterschiede zwischen mySQL und SQL bezüglich der "FROM-Syntax" oder ist es immer zwingen notwenig alle Relationen anzugeben. unpräzise fragestellung. "MySQL" mit "SQL" zu vergleichen ist wie "Mazda" mit "Auto" zu vergleichen. manche RDBMS decken dies ab, manche nicht. s'Amstel Zitieren
dunker Geschrieben 6. Mai 2008 Geschrieben 6. Mai 2008 wenn du aus einer tabelle was angezeigt bzw zum vergleichen brauchst must die auch im FROM angeben. Zitieren
Karl Nickel Geschrieben 6. Mai 2008 Geschrieben 6. Mai 2008 Richtig. Der erste Ausdruck ist syntaktisch falsch, da die Relation zu "question" fehlt. Zitieren
WiesneRobert Geschrieben 6. Mai 2008 Autor Geschrieben 6. Mai 2008 In den IHK Lösungen wird die erste Methodik angeben. Teste man das ganze unter mySQL funktionieren die SELECTs nicht. Ich meinte mySQL im Vergleich zu einer anderen SQL Distribution(?). manche RDBMS decken dies ab, manche nicht. aber das sagt ja schon alle, vielen Dank Zitieren
Martin1983 Geschrieben 6. Mai 2008 Geschrieben 6. Mai 2008 unpräzise fragestellung. "MySQL" mit "SQL" zu vergleichen ist wie "Mazda" mit "Auto" zu vergleichen. manche RDBMS decken dies ab, manche nicht. s'Amstel Ich denke ausschlaggebend hierfür ist der SQL-Standard und der sieht vor das es anzugeben ist. Was irgendwelche Frickler sich da bei ihrem DBMS abweichend von der Norm zusammengebastelt haben ist in der Prüfung uninteressant. Zitieren
SoL_Psycho Geschrieben 6. Mai 2008 Geschrieben 6. Mai 2008 Ich denke ausschlaggebend hierfür ist der SQL-Standard und der sieht vor das es anzugeben ist. Was irgendwelche Frickler sich da bei ihrem DBMS abweichend von der Norm zusammengebastelt haben ist in der Prüfung uninteressant. qft ^^ Zitieren
Karl Nickel Geschrieben 6. Mai 2008 Geschrieben 6. Mai 2008 Außerdem sind die IHK-Lösungsbögen nur Muster und erheben keinen Anspruch auf Richtigkeit. Der zweite Ausdruck ist definitiv richtig, der erste falsch. Unabhängig vom "IHK-DBMS" dürfte der erste Ausdruck in allen DBMSen falsch sein. Die Relation fehlt und ich glaube nicht, dass irgendein DBMS über alle Tabellen selektiert und nach gut Glück passende Spalten herausfischt. Neben der schlechten Peformance wäre auch das Ergebnis unter Umständen falsch... Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.