Mam 2 tabele w bazie (podane są okrojone)
CREATE TABLE `user` ( `userId` INT NOT NULL AUTO_INCREMENT , `userName` VARCHAR( 30 ) NOT NULL , PRIMARY KEY ( `userId` ) ) ENGINE = MYISAM CREATE TABLE `news` ( `newsId` INT NOT NULL AUTO_INCREMENT , `userId` INT NOT NULL , `newsText` TEXT NOT NULL , PRIMARY KEY ( `newsId` ) ) ENGINE = MYISAM
Aby wyświetlić news (treść + autora) wykonywałem takie zapytanie
SELECT `news`.`newsText`, `user`.`userName` FROM `news`, `user` WHERE `news`.`newsId` = ? AND `user`.`userId` = `news`.`userId` LIMIT 1 ;
Oczywiście jest wszystko fajnie, tylko problem się pojawia podczas gdy danego użytkownika usunę. Ponieważ wtedy nie są wyświetlane jego newsy (wiem czemu tak się dzieje

I tutaj pojawia się moje pytanie: Jak ten problem najlepiej rozwiązać? (Najbardziej mi chodzi o to aby zapytanie zwróciło puste pole `userName` podczas gdy użytkownik nie istnieje)
Obecnie robię to dwoma zapytaniami: najpierw pobieram `news`.`newsText`, `news`.`userId` i dopiero później na podstawie `news`.`userId` pobieram nazwę użytkownika (o ile istnieje).
Pozdrawiam Eagle.