[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: выбор из нескольких таблиц (одинаковые поля)
Гость_Dima
"SELECT table1.*, table2.* FROM table1, table2 WHERE table1.id = table2.userid"


Дело в том, что мы точно не знаем названия всех полей, могут появляться новые, при этом в table1 и table2 могут быть поля с одинаковым названием.

Можно ли добавить какой-нибудь префикс к названиям полей, чтобы не было перекрытия?

Теоретически что-то типа
"SELECT table1.* PREFIX table1_ , table2.* PREFIX table2_ FROM table1, table2 WHERE table1.id = table2.userid"

знаю про AS, но в данном случаи обязательно идет выборка всех полей, а не по-одному.



Спустя 1 час, 2 минуты, 56 секунд (27.08.2012 - 11:39) johniek_comp написал(а):
SELECT table1.*, table2.*
FROM table1
LEFT JOIN table2
ON table1.id = table2.userid

Спустя 58 минут, 20 секунд (27.08.2012 - 12:38) sergeiss написал(а):
johniek_comp - не в том вопрос.

Гость_Dima - по-моему, нельзя так сделать. Но я не понял насчет "могут появляться новые поля". Насколько часто они появляются?
Вообще, ты можешь создать VIEW и менять его при изменении структуры таблиц.

Спустя 40 минут, 45 секунд (27.08.2012 - 13:18) Guest написал(а):
sergeiss
Неужели совсем никак не разделить данные в соответствие с таблицами?

Спустя 1 час, 29 минут, 18 секунд (27.08.2012 - 14:48) sergeiss написал(а):
Цитата (Guest @ 27.08.2012 - 15:18)
Неужели совсем никак не разделить данные в соответствие с таблицами?

Я могу повторить только то, что уже написал ранее. Сделай VIEW и модифицируй его после изменений в таблицах. Я думаю, что изменения колонок у тебя не часто делаются? smile.gif А если часто, то тогда надо пересматривать структуру организации БД и логики приложения.

Спустя 2 часа, 4 минуты, 14 секунд (27.08.2012 - 16:52) Guest написал(а):
sergeiss

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

Это мешает сделать систему более универсальной. Буду думать.. спасибо

Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.