Отправляет email-рассылки с помощью сервиса Sendsay

RFpro.ru: Базы данных MySQL

  Все выпуски  

RusFAQ.ru: Базы данных SQL


РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / Базы данных SQL

Выпуск № 216
от 05.02.2007, 17:05

Администратор:Калашников О.А.
В рассылке:Подписчиков: 405, Экспертов: 61
В номере:Вопросов: 1, Ответов: 5


Вопрос № 73486: Уважаемые эксперты у меня к вам вопрос. Можно ли в ОДНОЙ БД обеденить две таблицы в запросе? Имя таблиц и имена полей в них взяты с потолка. Тоесть tbl1 и tbl2 в tbl1 есть поля event, perl, els в tbl2 есть поля asin, lone, love<br...

Вопрос № 73.486
Уважаемые эксперты у меня к вам вопрос. Можно ли в ОДНОЙ БД обеденить две таблицы в запросе?
Имя таблиц и имена полей в них взяты с потолка.
Тоесть
tbl1 и tbl2
в tbl1 есть поля event, perl, els
в tbl2 есть поля asin, lone, love
можно ли эти две таблицы обеденить
запросом where tbl1.perl=tbl2.asin

?
Отправлен: 31.01.2007, 16:42
Вопрос задал: Чинга (статус: Посетитель)
Всего ответов: 5
Мини-форум вопроса >>> (сообщений: 1)

Отвечает: Архангельский Андрей Германович
Здравствуйте, Чинга!

Нет проблем

Select t1.event, t1.els,t2.lone,t2.love
from tbl1 as t1, tbl2 as t2
where t1.perl=t2.asin

Возможны и более сложные объединения
---------
Если дело заслуживает быть сделаным, то оно заслуживает, чтобы его сделали ХОРОШО
Ответ отправил: Архангельский Андрей Германович (статус: Специалист)
Ответ отправлен: 31.01.2007, 16:49
Оценка за ответ: 5

Отвечает: ~Steep~
Здравствуйте, Чинга!

Можно, но необходимо чтобы у каждой таблицы были уникальные ключи
т.е. например tbl1.ID1, tbl2.ID2
Пример выборки некоторых столбцов из 2-х таблиц:

Select tbl1.event,
tbl1.els,
tbl2.asin,
tbl2.lone
From tbl1, tbl2
where tbl1.ID1=tbl2.ID2

или всех значений:

select * from tbl1, tbl2
where tbl1.ID1=tbl2.ID2
---------
Все всегда делаеться к Лучшему!
Ответ отправил: ~Steep~ (статус: 4-ый класс)
Ответ отправлен: 31.01.2007, 17:03

Отвечает: Mefisto
Здравствуйте, Чинга!
Конечно можно:
SELECT * FROM tbl1,tbl2 WHERE tbl1.perl=tbl2.asin

Выведутся поля event, perl, els, asin, lone, love

Возможно я не совсем прав, там скорее всего надо через JOIN это делать.
Ответ отправил: Mefisto (статус: 1-ый класс)
Ответ отправлен: 31.01.2007, 17:17

Отвечает: Базанов Иван Александрович
Здравствуйте, Чинга!
Да. Например так:
SELECT tbl1.*, tbl2.*
FROM tbl1, tbl2
WHERE tbl1.perl=tbl2.asin
Или так
SELECT tbl1.*, tbl2.*
FROM tbl1
JOIN tbl2 ON tbl1.perl=tbl2.asin
Во многих случаях это одно и тоже...

---------
Программист ошибается дважды: первый раз при рождении, второй при выборе профессии
Ответ отправил: Базанов Иван Александрович (статус: 3-ий класс)
Ответ отправлен: 31.01.2007, 18:02
Оценка за ответ: 5

Отвечает: Grigory
Здравствуйте, Чинга!
А что мешает-то? Объединяйте себе на здоровье :) Для того таблицы и создаются, чтоб их объединять (разумеется, в этом должен быть смысл :))
---------
Если хочешь быть счастливым - будь им! (Козьма Прутков)
Ответ отправил: Grigory (статус: Студент)
Ответ отправлен: 31.01.2007, 18:11


Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

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


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2007, Портал RusFAQ.ru, Россия, Москва.
Идея, дизайн, программирование: Калашников О.А.
Email: adm@rusfaq.ru, Тел.: +7 (926) 535-23-31
ООО "Мастер-Эксперт Про", Москва, 2007
Авторские права | Реклама на портале
Версия системы: 4.43 beta от 26.01.2007
Яндекс Rambler's Top100

В избранное