próbuję zaktualizować tabelę tak:Aktualizuj wiele wierszy z wieloma „gdzie” klauzul dla każdego rzędu
Update MyTable
SET value = 1
WHERE game_id = 1,
x =-4,
y = 8
SET value = 2
WHERE game_id = 1,
x =-3,
y = 7
SET value = 3
WHERE game_id = 2,
x = 5,
y = 2
mogę zrobić foreach()
ale wyśle ponad 50 oddzielnych zapytań, który jest bardzo powolny . Dlatego chcę, aby był on połączony w 1 dużą kwerendę.
(I należy używać id dla każdego rzędu, ale kombinacja game_id, x i Y jest to, co przy identyfikacji wiersz muszę).
The update_batch() funkcja opisana tutaj przez kodIgniter: Update batch with CodeIgniter była pomocna i prawie idealna, ale dopuszcza tylko jedną pojedynczą klauzulę where, nie można (o ile zrozumiałem i wypróbowałem) wprowadzić tablicę z wieloma klauzulami where.
Ja również wyrejestrowany to pytanie: MYSQL UPDATE SET on the Same Column but with multiple WHERE Clauses ale pozwala tylko na wielu aktualizacji wierszy zawierających tylko jeden inny WHERE i muszę kilka WHERE! :)
Anwsers może być w prostym SQL lub przy użyciu php (i CodeIgniter) lub w inny sposób. Chciałbym rozwiązać ten problem w jakikolwiek możliwy sposób;)
Naprawdę mogę skorzystać z porady/pomocy! = D
dziękuję! Pójdę i wypróbuję to teraz! – Dex
Pamiętaj, aby najpierw wykonać kopię zapasową bazy danych ': D' –
To zadziałało dzięki, jesteś moim bohaterem! =) – Dex