Вложенные таблицы? Возможны ли так......?

  • Автор темы Автор темы denisOg
  • Дата начала Дата начала

denisOg

Новичок
Вложенные таблицы? Возможны ли так......?

From: Денис Огурцов - 20/11/2009 - 16:15:15
Subject:Вложенные таблицы? Возможны ли......
-----------------
У меня есть таблица, допустим Группа 1

Денис|21|студент|sony
Сергей|21|студент|samsung
Марина|20|студент|sony
Леся|26|студент|canon

есть идентичная таблица, только разная по записям Группа 2

Мирон|30|студент|sony
Сергей|21|студент|panasonic
Олег|25|студент|sony
Дина|21|студент|accer

при этом записи все время пополняются.

Можно ли в таблице Группа 1 сделать запись-ссылку на таблицу Группа 2, так что бы когда я выводил все элементы таблицы Группа1 , то выводилась и таблица Группа 2. Как бы вложенная внутрь табличка.


Денис|21|студент|sony
Сергей|21|студент|samsung
--------------------------------
Мирон|30|студент|sony
Сергей|21|студент|panasonic
Олег|25|студент|sony
Дина|21|студент|accer
---------------------------------
Марина|20|студент|sony
Леся|26|студент|canon

Но мне не нужен sql запрос типа select1 union select1
я пока не хочу лесть в скрипт, но чувствую прийдеться...((
мне нужно добавить запись-ссылку в Группа1, на таблицу ГРуппа2(одинаковой структуры).
Скрипт выбирает все элементы Группы 1 доходит к ссылке, переходит и выбирает все из Группа2, потом возвращаеться обратно.
 
denisOg
А зачем тебе отдельная таблица на каждую группу? Сделай одну таблицу, в которой заведи поле для хранения идентификатора группы и по нему ты будешь отличать записи разных групп.
 
Автор оригинала: phprus
denisOg
А зачем тебе отдельная таблица на каждую группу? Сделай одну таблицу, в которой заведи поле для хранения идентификатора группы и по нему ты будешь отличать записи разных групп.
Нет, таблицы уже созданы, с каждой из них работает скрипт, а мне нужно что бы каждый скрипт работал не только со своей таблицей, но и с другой(одинаковой по структуре). Но так, что бы такие изменения сделать только в MySQL(а не в скрипте)
 
Зачем это нужно? И если в итоге все скрипты будут работать с данными из всех таблиц, то почему нельзя слить все данные в одну таблицу?
 
Что бы слить все данные в одну таблицу и запустить работу скриптов с ней, что нужно сделать?
1 Создать таблицу и в нее поместить две таблицы
2. в первом скрипте указать, что работать ему прийдеться теперь с этой таблицой.
3. во втором скрипте указать , что и ему теперь прийдеться работать с новой таблицей!

А что бы не искать, где это нужно прописывать, так как скрипт не моего производства, я хотел в самой таблице 1, сделать ссылку на таблицу 2. Это я думаю проще, если конечно возможно.!
Возможно ли? хотя все больше гложит мысли что прийдеться переделывать скрипт все таки....((
 
denisOg
есть законы, по которым работают базы данных.
один из этих законов - одинаковые данные должны лежать в одной таблице.
этот закон для всех один. и гораздо важнее того, что кому-то там кажется.
Будешь дальше работать - поймешь, почему так надо.
а сейчас просто делай, как говорят.

-~{}~ 21.11.09 02:10:

твоя "ссылка-запись" - это идентификатор группы.
запрашиваешь из таблицв студентов группы 1 - выведет их
запросишь тех, у которых группа = 2 - будут эти.
что тут сложного? все как ты хотел. две вложенные. в одной
 
я понял. и я так , как вы написали и делаю всегда. но тут такая история:
у меня есть 2 сайта на рус и на укр языке. Оба на joomle. БД у них одна , таблицы одинаковые, только отличаются приставками.
на обоих сайтах я установил купленный скрипт , которые создали в БД по таблице(rus_table и ukr_table). а мне нужно что бы скрипты на обоих сайтах работали с 1 таблицей(rus_table + ukr_table)
вот я и задался целью чтобы не лесть в этот скрипт, не искать обращение к таблице и менять его, а решил, что нить придумать с БД. но понял что вариантов немного...(

получается один вариант: соеденить две табл в одну и в каждом скрипте прописать к ней обращение.!)
 
Автор оригинала: denisOg
Что бы слить все данные в одну таблицу и запустить работу скриптов с ней, что нужно сделать?
1 Создать таблицу и в нее поместить две таблицы
CREATE TABLE two_tables (Полностью структура одной из таблиц, т.к. они одинаковые[, *])
TYPE=MERGE UNION=(rus_table,ukr_table[, N]) INSERT_METHOD=LAST;

В скриптах SELECT * FROM two_tables;

* UNIQUE или PRIMARY KEY в таблице two_tables не создавать, так как в этой таблице ключ не будет уникальным.

Более подробно на http://dev.mysql.com/doc/
 
Viktor_Rez
спасибо ,я так и представлял, осталось, только в скрипте найти где там есть нечто подобное SELECT или INSERT или UPDATE, для данной таблице, так как стрипт этот ................CMS JOOMLA

может кто нить знает ,в каком месте происходит работа с таблицами пользователей.....
 
Сверху