Проблем с LEFT JOIN

c3c0

Registered
Здравейте. В момента правя една система за лични съобщения. Реших те да са под формата на разговори. Т.е. потребител 1 създава разговор с потребител 2 и започнат да си изпращат лични съобщения, като те са групирани в един разговор. Не знам дали ме разбрахте точно какво имам предвид, но ето таблицата:

Код:
users_talks
	talk_id
	talk_title
	user_name_1
	user_name_2

users_talks_pm
	
	pm_id 
	talk_id
	pm_author
	pm_comment
	pm_read

users_talks - списък с всички разговори
users_talks_pm - съобщенията, като talk_id е връзката между таблиците.

Целта ми е да изкарам всички нови съобщения на логнатия потребител, независимо дали създадения разговор е от него или не.

Ето каква заявка пращам към базата данни:
Код:
$sql = 'SELECT * FROM users_talks LEFT JOIN users_talks_pm ON (users_talks.talk_id = users_talks_pm.talk_id)
		WHERE pm_author != "'.$login_user.'" AND user_name_1 = "'.$login_user.'" OR user_name_2 = "'.$login_user.'" AND pm_read=0';
Проблема със заявката е, че не изкарва правилно новите лични съобщения. Някакви идеи?
 
[sql]SELECT * FROM `users_talks`
JOIN `users_talks_pm` ON (`users_talks`.`talk_id` = `users_talks_pm`.`talk_id`)

WHERE (`user_name_1` = "'.$login_user.'" OR `user_name_2` = "'.$login_user.'") AND `pm_read`=0[/sql]
 

Back
Горе