Всем привет! Ребята, подскажите, как к каждой строке таблицы привязать другую таблицу? Все нужно средствами БД MySQL. Как сделать на PHP я знаю. Конкретно задача: 1 . Создана "обычная" таблица. 2. Посредством SELECT * FROM обычная таблица - делаем выборку всех строк. 3. Но для каждой строки есть еще другая таблица с данными, и, необходимо, чтобы эти данные (из всех таблиц для каждой строки) летели в одном массиве с выборкой из первой таблицы. В первой обычной таблице можно добавить любое необходимое поле для этих целей, например id с ключем. Я добавил столбец и в каждой ячейке этого столбца каждой строки прописал имя нужной таблицы. А дальше не знаю что делать и как. Подскажите. За ранее благодарю!
Делай отдельным запросом. Если я правильно понял, тебе нужно что-то такое: Простая модель данных. --- Добавлено --- Т.е. все данные из всех таблиц сразу?
Ну да , все и сразу! Простым запросом я понимаю так: первую основную таблицу выбрал, затем перебираю массив полученных данных, подставляю имена других таблиц из этого массива в новые запросы и выбираю все таблицы?
Да. А если данные во второстепенных таблицах похожи по составу полей и отличаются прежде всего тем, что они соответствуют разным записям осн. таблицы, то можно их объединить в одной таблице и делать выборку одним запросом, при необходимости сортируя по «id родителя» для группировки. Причем, если нужно, эти группы могут представляться в БД, как отдельные таблицы. Там есть коммент со ссылкой на мою статью. Подкатегории, соотв. разным разделам, физически хранятся в одной таблице, но в БД видны в том числе и как записи разных таблиц, по одной таблице на каждый раздел. --- Добавлено --- В случае объединения второстепенных таблиц также можно всю выборку делать одним запросом, хотя это далеко не всегда эффективно. Делается путем «разворота таблиц»: вы в первую очередь выбираете из единой второстепенной таблицы и к каждой записи при помощи LEFT JOIN присоединяете нужные поля осн. таблицы. Я написал «нужные», потому что нужно стараться сократить объем присоединяемых данных, т.к. в них будет много дублей из осн. таблицы.
@Атм_Евгений, а почему бы не почитать книг и не лепить горбатого к стенке? Первая и главная ошибка, в ячейке строки таблицы не должно быть названия таблицы.
Не будь столь категоричен. Бывают разные ситуации. P.S. Ты скорее всего прав применительно к случаю ТСа. Я ему писал, в основном ориентируясь на его виденье решения. Но показанный мной вариант предназначен для немного большего, чем создание элементарной иерархии