Update coloana Mysql cu lista de cifre

Eu cred că ai o structură a bazei de date greșită, în care legi id-ul imaginilor de albume. Ce se întâmplă cu un album atunci când ștergi o imagine?

Ai două variante:

one to many

Situația asta este OK atunci când ești absolut sigur că o imagine poate fi într-un singur album. Altfel spus, ai albumul (one) și imaginile (many).

Pentru a face treaba asta, la imagini adaugi o coloană extra (e.g. album) și de fiecare dată când vrei să afișezi imaginile dintr-un album, faci ceva de genul: SELECT * from photos_list WHERE album = 10

many to many

A doua variantă este când o imagine poate fi în mai multe albume (și, evident, un album poate avea mai multe imagini)

Pentru asta ai nevoie de un tabel extra (se numește tabel pivot) și are o structură de forma:

photo_id album_id

Să-i zicem photo_album_pivot .

Ca să afișezi imaginile dintr-un album trebuie să înțelegi un pic cum funcționează JOIN în SQL Uite un exemplu de query:

select photo.id, photo.username, album.name
from photos photo
  left join photo_album_pivot p on photo.id = p.photo_id
  left join albums_list album on p.album_id  = album.id
where album.id = 10
3 Likes