Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.10.29;
Скачать: CL | DM;

Вниз

объединение 3-х таблиц в одну   Найти похожие ветки 

 
menart ©   (2006-08-31 20:34) [0]

Помогите решить такую задачу или подскажите как элегантнее сделать...
Есть 3 таблицы: 2 (turik и tfiz) из них с полями id(int), name(varchar[100]) + различные поля, набор свойств каждой таблицы юр лица и физ лица. Третья таблица имеет поля hid(int), id(int), type(int). type является указателем на таблицу turik или tfiz. Надо сделать объединение. hid, id, type, name, где name будет подставляться взависимости от значения type. Type=1 turik, type=2 tfiz. Заранее спасибо


 
Desdechado ©   (2006-08-31 21:14) [1]

объединение - это вширь (объединить набор полей) или в длину (объединить множество записей)?


 
Reindeer Moss Eater ©   (2006-08-31 21:56) [2]

Лень учить SQL - пользуйся визуальным конструктором запросов mssql


 
Anatoly Podgoretsky ©   (2006-08-31 22:11) [3]

Объединение - это вглубь UNION.
А попросу похоже, что требуется соединение - это в ширину, различные варианты JOIN, в крайнем случае FROM tbl1, tbl2, tbl3 WHERE условие.
Ограниченный вариант INNER JOIN


 
Fay ©   (2006-09-01 01:47) [4]

2 Reindeer Moss Eater ©   (31.08.06 21:56) [2]
> Лень учить SQL - пользуйся визуальным конструктором запросов mssql
А-а-а, мой моск! Визуальные построители запросов - такое г... !
Зачем вАщЕ давать советы тем, кому "лень учить" ?..

2 афтар
Структуру лучше приводить в DDL (в ключами-чами-чами-чами)
Исходные данные - "insert ..."
Желаемый результат - как угодно, но наглядно.
Заранее поздравляю.


 
SergP ©   (2006-09-01 05:24) [5]

> [0] menart ©   (31.08.06 20:34)
> Помогите решить такую задачу или подскажите как элегантнее
> сделать...
> Есть 3 таблицы: 2 (turik и tfiz) из них с полями id(int)
> , name(varchar[100]) + различные поля, набор свойств каждой
> таблицы юр лица и физ лица. Третья таблица имеет поля hid(int)
> , id(int), type(int). type является указателем на таблицу
> turik или tfiz. Надо сделать объединение. hid, id, type,
> name, где name будет подставляться взависимости от значения
> type. Type=1 turik, type=2 tfiz. Заранее спасибо


Хз... Наверное что-то типа этого:


(select a.hid,a.id,a.type,b.name
  from table3 a,turik b
  where a.id=b.id and a.type=1)
UNION
(select a.hid,a.id,a.type,b.name
  from table3 a,tfiz b
  where a.id=b.id and a.type=2)


> [2] Reindeer Moss Eater ©   (31.08.06 21:56)
> ... пользуйся визуальным конструктором запросов...


не понимаю я этих конструкторов. и зачем они вообще нужны? В Access"е когда-то пытался воткнуть в этот конструктор. Так и ничего не понял. И до сих пор не умею пользоваться конструкторами запросов. Да и сам текст  запроса гораздо нагляднее и лучше воспринимается моском чем разные конструкторы...


 
ANB ©   (2006-09-01 09:07) [6]


> UNION

заменить на union all желательно. И все пучком будет.


 
menart ©   (2006-09-01 14:35) [7]


> SergP ©   (01.09.06 05:24) [5]

От души благодарен.
Вопрос решен



Страницы: 1 вся ветка

Текущий архив: 2006.10.29;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.081 c
6-1149503312
Slaga
2006-06-05 14:28
2006.10.29
Доступ к Сервису с локальной сети.


4-1150313195
Rules
2006-06-14 23:26
2006.10.29
Определение запуска приложения


15-1160372999
boriskb
2006-10-09 09:49
2006.10.29
У кого родственники, знакомые плавают?


15-1159974010
Сатир
2006-10-04 19:00
2006.10.29
Спрашивали на собеседовании...


2-1160823835
MAX.
2006-10-14 15:03
2006.10.29
подскажите