Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / MySQL [игнор отключен] [закрыт для гостей] / LEFT JOIN / 14 сообщений из 14, страница 1 из 1
21.08.2014, 15:48:58
    #38725737
blaccyee
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
LEFT JOIN
Имеются таблицы (скриншоты).
Необходимо получить только сообщения от друзей, то есть те, где status = 1 в таблице "myFriends".

То, что есть, но нерабочее (выводит все):
Код: sql
1.
2.
3.
4.
5.
6.
7.
Select wall.`id` as `idPost`,wall.`author`, wall.`recipient`, wall.`id`, wall.`message`, wall.`attachment`, wall.`pulse`, wall.`date`, `user`.`name`, `user`.`surname`, SUM(likesData.likeStats) as likes FROM `wallMessage` as wall
            left join likeWall as likesData on  likesData.postID=wall.`id`
            Left join `user` on user.id = wall.`author`
            LEFT JOIN likeWall ON likeWall.postID=wall.`id` 
            Left join  `myFriends` on wall.`author`= (user.id = IF(idInput <> 1, idInput, idOutgoing)) and (status = 1) and (wall.author = user.id) and (wall.author <> 1)
            WHERE wall.`author` <> 1
            group by  `idPost` ORDER BY `date` DESC LIMIT 0, 50
...
Рейтинг: 0 / 0
21.08.2014, 15:49:13
    #38725739
blaccyee
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
LEFT JOIN
Еще скриншот
...
Рейтинг: 0 / 0
21.08.2014, 15:49:23
    #38725740
blaccyee
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
LEFT JOIN
И еще
...
Рейтинг: 0 / 0
21.08.2014, 15:50:31
    #38725741
blaccyee
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
LEFT JOIN
...
Рейтинг: 0 / 0
21.08.2014, 16:25:13
    #38725787
javajdbc
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
LEFT JOIN
blaccyee,

многие джоинты -- многие печали...

для отладки -- упростите запрос что бы понять
где прорываютя все записи
...
Рейтинг: 0 / 0
21.08.2014, 16:28:08
    #38725792
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
LEFT JOIN
Не, а какого хрена ЛЕВОЕ связывание? другого не знаешь, что ли?
...
Рейтинг: 0 / 0
21.08.2014, 16:36:35
    #38725811
blaccyee
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
LEFT JOIN
mysql недавно начал учить, но с этой задачей никак справиться не могу, поэтому рассчитываю на вашу помощь.
...
Рейтинг: 0 / 0
21.08.2014, 16:42:42
    #38725823
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
LEFT JOIN
Ну так приведи DDL таблиц хотя бы, что ли... ну и дополнительно можно пример наполнения и желаемый для него результат. Лишние поля можно поскипать.
...
Рейтинг: 0 / 0
21.08.2014, 16:44:07
    #38725826
blaccyee
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
LEFT JOIN
Так я же скинул скриншоты таблиц, да и объяснил, вроде, нормально, что не получается и что хочу сделать.
...
Рейтинг: 0 / 0
21.08.2014, 16:46:59
    #38725833
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
LEFT JOIN
blaccyeeя же скинул скриншоты таблиц
А мы по фотографиям не лечим... да и не понять там ни фига. Где, что, почему...
...
Рейтинг: 0 / 0
21.08.2014, 16:53:33
    #38725845
blaccyee
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
LEFT JOIN
Есть таблица wallMessage:

id
author
recipient
message
attachment
pulse
date

Есть таблица user:

id
name
surname
email
photo

Нужно из этих таблиц взять все, если в таблице myFriends:
id
idOutgoing По убыванию
idInput
status

status равен единице.
...
Рейтинг: 0 / 0
22.08.2014, 09:36:15
    #38726273
Hett
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
LEFT JOIN
Честно говоря по названию полей сложно догадаться что с чем и каким образом связывается...
Что такое idOutgoing и idInput?
...
Рейтинг: 0 / 0
22.08.2014, 16:43:58
    #38726941
oaken
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
LEFT JOIN
blaccyeeЕсть таблица wallMessage:

id
author
recipient
message
attachment
pulse
date

Есть таблица user:

id
name
surname
email
photo

Нужно из этих таблиц взять все, если в таблице myFriends:
id
idOutgoing По убыванию
idInput
status

status равен единице.

Код: sql
1.
select m.* from wallMessage m join user u on m.author = u.id  join myFriends f on f.id = u.id

так?
...
Рейтинг: 0 / 0
22.08.2014, 16:45:23
    #38726942
oaken
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
LEFT JOIN
oaken,
про статус забыл
Код: sql
1.
where f.status = 1
...
Рейтинг: 0 / 0
Форумы / MySQL [игнор отключен] [закрыт для гостей] / LEFT JOIN / 14 сообщений из 14, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]