Przede wszystkim dziekuję za odzew!
To zapytanie dlatego takie złozone, bowiem nie jest to jedna tabela, ale cztery tabele powiązane relacyjnie. Inaczej się nie dało wyjść z relacji wiele-do-wielu: jeden autor może mieć kilka tekstów, ale i jeden tekst może mieć kilku współautorów.
Oto struktura tych tabel:
Kod: Zaznacz cały
TABLE autorzy
autor_id SMALLINT(4) UNSIGNED NOT NULL AUTO_INCREMENT,
imie CHAR(20) default NULL ,
nazwisko CHAR (30) default NULL ,
adres CHAR (50) default NULL ,
email CHAR (30) default NULL ,
oficjalki_nt_autora TEXT default NULL ,
data_wpisu DATE default NULL ,
PRIMARY KEY (autor_id),
INDEX autor (nazwisko, imie)
TABLE teksty
tekst_id SMALLINT(4) UNSIGNED NOT NULL AUTO_INCREMENT,
tytul CHAR (100) default NULL,
typ_publikacji_id SMALLINT(1) default NULL,
link CHAR (20) default NULL,
data_tekstu DATE default NULL,
data_oswiadczenia DATE default NULL,
data_publikacji DATE default NULL,
data_zaswiadczenia DATE default NULL,
oficjalki_nt_tekstu TEXT default NULL,
wewn_uwagi_publikacyjne TEXT default NULL,
data_wpisu DATE default NULL,
PRIMARY KEY (tekst_id),
INDEX (tytul)
TABLE powiazania
powiazania_id SMALLINT(4) UNSIGNED NOT NULL AUTO_INCREMENT,
autor_id SMALLINT(4) default NULL ,
tekst_id SMALLINT(4) default NULL ,
PRIMARY KEY (powiazania_id)
TABLE typy_publikacji
typ_publikacji_id SMALLINT(1) UNSIGNED NOT NULL AUTO_INCREMENT,
nazwa CHAR (25),
PRIMARY KEY (typ_publikacji_id)
Ja chciałabym, podając wartość pola teksty.tekst_id , wyświetlić wszystkich autorów, którzy przypisani są (w tabeli POWIAZANIA) do tej wartości tekst_id (powiazania.tekst_id).
Na przykład tak:
W jednej komórce wyświetlanej tabeli:
Anna Ostrowska,
Jan Nowak,
Adam Kowalski
A w sąsiedniej komórce tytuł ich wspólnej pracy: O obrotach sfer niebieskich
Pozdrawiam serdecznie
Anna Ostrowska