Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2003.08.25;
Скачать: [xml.tar.bz2];

Вниз

Запрос SQL для TQuery.   Найти похожие ветки 

 
Weare   (2003-07-29 18:19) [0]

Помогите, плз. Книга дома, а мне ну о-очень срочно нужно. Есть две таблицы наименования товаров (и в одной и в другой есть поле Name). Как создать запрос, который бы давал таблицу, содержащую наименования из одной и из другой таблицы в одном и том же столбце, все равно в каком порядке.
А то я тут под конец дня совсем заработался.


 
Соловьев   (2003-07-29 18:21) [1]

связать по ключевому полю?

select t1.*, t2.*
from table1 t1 join table2 t2 on t1.Name=t2.Name


 
Weare   (2003-07-29 18:37) [2]

Тогда получается, что если в t2 нет такого наименования как в t1, то оно не попадет в результирующую таблицу. А мне необходимо, чтобы все наименования из первой и второй таблицы попали в один столбец.


 
Mike1 Kouzmine1   (2003-07-29 18:40) [3]

А ф1 тоже дома? Почитай про left join, right join в localsql.hlp


 
Соловьев   (2003-07-29 18:41) [4]


> Тогда получается, что если в t2 нет такого наименования
> как в t1, то оно не попадет в результирующую таблицу.


select t1.*, t2.*
from table1 t1 left join table2 t2 on t1.Name=t2.Name



> Mike1 Kouzmine1 (29.07.03 18:40)

прав. надо хоть чуть-чуть читать хелп.


 
Weare   (2003-07-29 19:07) [5]


> Mike1 Kouzmine1 (29.07.03 18:40)
> А ф1 тоже дома?

Не понял.


> Соловьев © (29.07.03 18:41)


> select t1.*, t2.*
> from table1 t1 left join table2 t2 on t1.Name=t2.Name

А так все равно получается два результирующих столбца: Name и Name1. А мне нужен один.
Вот, например, в одной таблице есть - сервиз, стакан; а во второй - ложка, хлебница, стакан.
Мне нужно, чтобы все эти наименования попали в один столбец результирующей таблицы.


 
Mike1 Kouzmine1   (2003-07-29 19:12) [6]

Тогда читай про union


 
gsvserg   (2003-07-29 19:30) [7]

select (t1.name +" "+ t2.name) as newname
from table1 t1 left join table2 t2 on t1.Name=t2.Name


 
Weare   (2003-07-29 19:45) [8]


> gsvserg © (29.07.03 19:30)

Спасибо, но так мне выдало наименования только из первой таблицы.
Еще раз.
Давайте так:

есть Table1: NAME и Table2: NAME
сервиз ложка
стакан хлебница
стакан
Нужно получить: Name
сервиз
стакан
ложка
хлебница
стакан


 
MichailDalacov   (2003-07-29 20:27) [9]

select NAME,1 from Table1
union
select NAME,2 from Table2


 
MichailDalacov   (2003-07-29 20:34) [10]

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


 
Dred2k   (2003-07-29 21:35) [11]

> MichailDalacov (29.07.03 20:34)

Судя по > Weare © (29.07.03 19:45)
подойдут.


 
Weare   (2003-07-30 11:07) [12]


> MichailDalacov (29.07.03 20:27)
> select NAME,1 from Table1
> union
> select NAME,2 from Table2

Огромное спасибо, работает.



 
MichailDalacov   (2003-07-30 12:10) [13]

select NAME from Table1
union all
select NAME from Table2



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

Форум: "Базы";
Текущий архив: 2003.08.25;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.009 c
1-81656
Calm
2003-08-12 08:48
2003.08.25
Как уведомить компоненты об уничтожении одной из них?


14-81934
Opera
2003-08-07 11:06
2003.08.25
Background color


14-81929
Feshik
2003-08-06 14:12
2003.08.25
Нажать кнопку или ввести текст в чужом окне


14-81911
vopros
2003-08-07 14:29
2003.08.25
Люди помогите c Indy.Надо файл-вложения сделать.


11-81602
_Ed_
2002-12-16 14:42
2003.08.25
Глюк TKOLBitBtn





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский