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

Вниз

SQL запрос из двух таблиц   Найти похожие ветки 

 
Alexcool   (2002-06-27 20:16) [0]

Правда, не знаю как сделать, подскажите. Мне нужно сделать что-то вроде SELECT * FROM Table1, Table2. Но в этих таблицах есть поля с одинаковыми названиями, например ID. В результате я получаю DataSet с полями ID и ID_1, а хотелось бы с полями Table1ID и Table2ID. Это возможно? Если возможно, то как?


 
Anatoly Podgoretsky   (2002-06-27 20:36) [1]

Если заменить * на список полей, то да, используй предикат AS


 
dimis   (2002-06-27 21:00) [2]

select a.id Table1id,b.id Table2id
from table1 a,table2 b


 
Viewer   (2002-06-27 21:04) [3]

Пример

SELECT R.*, T.ID AS TOWN_TOWN_ID, T.NAME AS TOWN_NAME, T.CODE AS TOWN_CODE, T.CTYPE_ID AS T_CTYPE_ID,
S.ID AS STREET_STREET_ID, S.NAME AS STREET_NAME,
C.ID AS C_ID, C.ABR AS C_ABR
FROM BUYERS R, TOWNS T, STREET S, CTYPE C


 
Viewer   (2002-06-27 21:06) [4]

Еще можно проектировать таблицы и поля как
TABLE1_FIELDNAME1

Но для универсальности это не здорово, хотя и обходимо.


 
Polevi   (2002-06-28 08:20) [5]

это извращение


 
Diana   (2002-07-02 08:41) [6]

А как на счет стандартного метода?
Select t1.*,t2.*
from table1 t1, table2 t2
where t1.<Имя ключевого поля>=t2.<Имя ключевого поля>


Имейте в виду без t1.<Имя ключевого поля>=t2.<Имя ключевого поля> записи в таблицах просто перемножатся друг на друга.
Да и все столбцы выберать не обязательно,
можно так
select t1.<Поле> П1, t2.<Поле> П2 ...
И все будет... :-)


 
Oleggg   (2002-07-02 09:38) [7]

Юзай UNION
select * from t1 union select * from t2.

ЗЫ Спасибо Динана, насмешила - хороший пример того, что до девушек туго доходит, что нужно парням :)


 
Sergey13   (2002-07-02 09:46) [8]

2Oleggg (02.07.02 09:38)
А ты сам то понял о чем речь? 8-)
Хороший пример того, что до некоторых парней вообще не доходит...


 
Lemon_AlexL   (2002-07-02 11:18) [9]

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

Присвоить в выборке им (полям) свои названия используя инструкцию
"ИМЯ_ПОЛЯ_В_ТАБЛИЦЕ" AS "ИМЯ_ПОЛЯ_В_РЕЗУЛЬТАТЕ". Правда для этого придется отказаться от символа "*" в SELECT, в мсто этого перечислять поля как они есть.
Пример:
SELECT (T1.FIELD1) AS FIELD1_FROM_T1,
(T2.FIELD1) AS FIELD1_FROM_T2
FROM TABLE1 T1, TABLE2 T2
... ну и т. д.



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

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

Наверх





Память: 0.46 MB
Время: 0.005 c
1-70715
novice_al
2002-07-11 14:58
2002.07.22
вопрос дилетанта, но необходим


14-70895
Роман Василенко
2002-06-21 10:39
2002.07.22
Ищу братьев по разуму (Advantage TDataset Descendant)


14-70905
Gayrus
2002-06-15 13:41
2002.07.22
WebBrowser


14-70917
_Smart
2002-06-26 02:35
2002.07.22
Atom ы


1-70821
iii
2002-07-10 15:20
2002.07.22
Реестр. Как избежать ошибки?





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский