Ich habe Probleme beim Implementieren dieser Abfrage in vb.net. Die Fehlermeldung, die ich bekomme, ist mit dem "as" in der ersten Zeile. Dies ist eine lokale SQL Compact Datenbank 3,5Syntaxfehler in der SQL-Abfrage
cmd.CommandText = "UPDATE player as a " &
"SET starter = 'TRUE' " &
"WHERE NOT EXISTS (SELECT '1' " &
"FROM player AS b " &
"WHERE(b.school = a.school) " &
"AND b.weight = a.weight " &
"AND b.skill > a.skill)"
cmd.ExecuteNonQuery()
Fehlermeldung - http://i40.tinypic.com/34gms5z.png
cmd.CommandText = "UPDATE a " &
"SET starter = 'TRUE' " &
"FROM player a " &
"LEFT JOIN player b " &
"ON a.school = b.school " &
"AND a.weight = b.weight " &
"AND b.skill > a.skill " &
"WHERE b.school is NULL"
cmd.ExecuteNonQuery()
Fehlermeldung - http://i40.tinypic.com/106kn86.png
Ich habe Probleme bei der SQL-Parsing ..., was Sie versuchen zu mit dieser Abfrage tun? UPDATE: Ich sehe jetzt, du versuchst, jeden zu einem Starter zu machen, als wen es nicht mehr fähige Spieler des gleichen Gewichts an der gleichen Schule gibt. – McGarnagle
Verwandte Frage (aber kein Duplikat): [Wie man die Geschwindigkeit dieses SQL verbessert Abfrage aktualisieren?] (http://stackoverflow.com/questions/9847599/how-to-improve-the-speed-of-this-sql-update-query). –
Warum nicht eine gespeicherte Prozedur verwenden? – PraveenVenu