Главная страница
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.042 c
2-1161007194
dim2001
2006-10-16 17:59
2006.10.29
stringgrid фокус ввода


15-1160573296
Rule
2006-10-11 17:28
2006.10.29
Подскажите пожалуйста где взять формальную граматику T-SQL(MSSQL)


3-1156941283
tytus
2006-08-30 16:34
2006.10.29
Как правильно создать пользователя.


6-1149575747
Vavilon
2006-06-06 10:35
2006.10.29
Написание плагина для Internet Explorera


2-1160838431
Steep
2006-10-14 19:07
2006.10.29
Рисование