ich habe 2 Anfragen:seltsam mysql Fehler
UPDATE dws_photogallery_albums a
SET a.photoscount=(
SELECT COUNT(*) FROM dws_photogallery_photos p
WHERE p.albumid=a.albumid)
UPDATE dws_photoportfolio_photos a
SET a.photoscount=(
SELECT COUNT(*) FROM dws_photoportfolio_photos p
WHERE p.albumid=a.albumid)
ersten Werke in Ordnung, aber gibt mir zweiten Fehler:
#1093 - You can't specify target table 'a' for update in FROM clause
Tabellen identisch sind (unterscheidet sich nur durch seinen Namen). was kann es sein?
UPD: Männer, ich bin so traurig, es ist nur meine missprint, müssen Abfragen aussehen:
UPDATE dws_photogallery_albums a
SET a.photoscount=(
SELECT COUNT(*) FROM dws_photogallery_photos p
WHERE p.albumid=a.albumid)
UPDATE dws_photoportfolio_albums a
SET a.photoscount=(
SELECT COUNT(*) FROM dws_photoportfolio_photos p
WHERE p.albumid=a.albumid)
Und beide funktioniert für mich ok. Vielen Dank für die Antworten, brauchen Sie mehr Kaffee
Ich bin überrascht, dass das erste man arbeitet. –
gut ... nach dem Lesen Ihrer Kommentare bin ich auch überrascht. ok, ich möchte mit dem Schicksal spielen und beide Abfragen umschreiben (auch wenn es zuerst funktioniert) – Dmitry
Der beste Weg ist jedoch mit einem JOIN, wie Devarts Antwort. –