SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 19.02.2011 11:41:19

yellowcat
Участник
Зарегистрирован: 09.11.2010
Сообщений: 19

Аналог символических ссылок в PHP

Добрый день. Возможно туманное название темы. При чем здесь символические ссылки? Просто в php есть возможность обращаться к переменной таким вот образом $$var. Суть в чем:

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

 
comment_id | parent_id | id | module | user_id | text | created

в которой в поле module содержится название таблицы, а в поле id - идентификатор материала, к которому сделан комментарий. Самих модулей (таблиц) может быть много. Помимо id, в них содержатся поля title.

Так вот, возможно ли вытащить title в одном запросе?
Допустим, мне нужно вытащить 20 последних комментариев.
Комментарии сделаны к материалам из модуля 'content' и из модуля 'foto'.
Соответственно имеем 2 дополнительные таблицы content и foto с полями id и title.
Я так понимаю, что необходимо составить подзапрос, который будет возвращать имя таблицы, из которой нужно вытаскивать title. Возможно ли вообще такое? И как по-другому решаются подобные задачи.

Всем откликнувшимся спасибо!

Отредактированно yellowcat (19.02.2011 11:41:36)

Неактивен

 

#2 19.02.2011 15:16:51

rgbeast
Администратор
MySQL Authorized Developer and DBA
Откуда: Москва
Зарегистрирован: 21.01.2007
Сообщений: 3880

Re: Аналог символических ссылок в PHP

В MySQL нельзя подставлять переменную на место имени таблицы. Если вы пишете хранимую процедуру, то ограничение можно обойти - подготовить второй запрос с помощью PREPARE и выполнить.

Неактивен

 

#3 19.02.2011 15:20:59

yellowcat
Участник
Зарегистрирован: 09.11.2010
Сообщений: 19

Re: Аналог символических ссылок в PHP

Я не знаком с хранимыми процедурами.
Можете мне посоветовать понятную литературу про эти процедуры + наглядные примеры их применения.
Желательно ра русском языке.

Неактивен

 

#4 19.02.2011 18:17:08

rgbeast
Администратор
MySQL Authorized Developer and DBA
Откуда: Москва
Зарегистрирован: 21.01.2007
Сообщений: 3880

Re: Аналог символических ссылок в PHP

Пример испозьзования PREPARE есть в этой статье: http://webew.ru/articles/178.webew

Про сами процедуры, см., например, здесь http://www.internet-technologies.ru/art … _1318.html но лучше читать манул MySQL на английском.

Неактивен

 

#5 19.02.2011 18:32:30

yellowcat
Участник
Зарегистрирован: 09.11.2010
Сообщений: 19

Re: Аналог символических ссылок в PHP

Как то можно еще решить данную задачу?

Неактивен

 

#6 19.02.2011 18:36:42

rgbeast
Администратор
MySQL Authorized Developer and DBA
Откуда: Москва
Зарегистрирован: 21.01.2007
Сообщений: 3880

Re: Аналог символических ссылок в PHP

Вы не до конца сформулировали в чем задача заключается. Любую конкретную задачу можно решить многими способами, например, внутри php формировать запросы. Если ограничиться средствами MySQL, то обходной путь только один - он приведен. Второе почти решение - отказаться от разных таблиц и объединить все в одну.

Неактивен

 

#7 19.02.2011 18:40:27

yellowcat
Участник
Зарегистрирован: 09.11.2010
Сообщений: 19

Re: Аналог символических ссылок в PHP

Ясно. Большое спасибо. Как всегда выручили!

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson