|
Pilot
Тех-Альянс
Зарегистрирован: 2007-02-20
Сообщений: 45
|
Друзья, всем привет!
В системе есть очень классный модуль - облако тегов.
Есть задача.
При добавлении объектов в систему я часто вписываю одни и те же теги, т.к. в этом есть необходимость. Порой это крайне долго, так, как их много.
Есть идея, показывать при добавлении объекта все теги, которые я когда-либо добавлял. Именно мои, т.е. те, которые принадлежат пользователю №1.
Есть три таблицы:
Код:
== Структура таблицы tags_data
|------
|Tag_ID|Tag_Text
|------
|1|Москва
|2|Турция
|3|Санкт Петербург
|4|река
|5|набережная
|6|вода
|7|день
|8|Мэйджер
|10|Новорижское шоссе
|11|новое
Код:
== Структура таблицы tags_message
(соответствие tags_data.Tag_ID и message2000.Message_ID)
|------
|Tag_ID|Message_ID|
|------
|1|87|
|1|83|
|1|50|
|2|63|
|1|63|
|3|74|
|4|74|
|5|74|
|6|74|
|7|74|
|8|88|
|10|88|
|11|89|
Код:== Структура таблицы message2000
|Message_ID|User_ID|
|48|1|
|44|1|
|45|1|
|46|1|
|47|1|
|41|1|
|42|1|
|43|1|
|50|1|
|68|1|
|62|1|
|63|1|
|66|1|
|86|1|
|83|3|
|71|1|
|72|1|
|74|1|
|81|2|
|82|3|
|78|1|
|79|1|
|80|1|
|87|1|
|88|7|
|89|7|
Естественно, в каждой таблице больше столбцов, но я показал именно те, которые необходимы для выборки тегов. Для облегчения понимания.
Задача: Вывести данные сгрупированные по Tag_Text в таком виде Tag_Text - Tag_ID из таблицы tags_data только по условию message2000.User_ID = 1
Я пробовал так:
Код SQL
Код:SELECT Tag_Text, tags_data.Tag_ID
FROM `Tags_Message` , `message2000` , `tags_data`
WHERE tags_message.Tag_ID = tags_data.Tag_ID
AND message2000.User_ID =1
GROUP BY tags_data.Tag_Text
Код:Выводит
|------
|Tag_Text|Tag_ID
|------
|вода|6
|день|7
|Москва|1
|Мэйджер|8
|набережная|5
|новое|11
|Новорижское шоссе|10
|река|4
|Санкт Петербург|3
|Турция|2
Но это попросту все данные без условия выборки message2000.User_ID = 1
pilot
|