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

Вниз

SQL в ADO   Найти похожие ветки 

 
Heathen ©   (2002-10-08 17:14) [0]

Всем привет!
Может кто-нибудь объяснить, почему при следующем запросе:
SELECT Таблица1.id_n,Таблица1.name,Таблица1.opisanie, Таблица2.*
FROM Таблица1, Таблица2
WHERE Таблица1.id_n = Таблица2.id_n and

выводится 6-ь столбцов вместо 3-х объединенных
но хуже всего что они пустые хотя данные в таблицах есть
(использую ADOQuery и таблицу Access)
Заранее спасибо!


 
Mike_Goblin ©   (2002-10-08 17:42) [1]

1. Потому что просим вывести Таблица2.* - т.е помимо явно указанных трех столбцов Таблица1.id_n,Таблица1.name,Таблица1.opisanie все столбцы из Таблица2

2.
WHERE Таблица1.id_n = Таблица2.id_n and
После and должно быть, видимо, еще одно условие, которое может отсекать все записи, либо в таблице Таблица2 нет записей с id_n, присутствующих в Таблице 1




 
Heathen ©   (2002-10-08 17:54) [2]


Понял, спасибо!
Вот седующая иструкция-работает,

Add("SELECT Таблица1.*, Таблица2.*");
Add("FROM Таблица1, Таблица2");
Add("WHERE Таблица1.id_n = Таблица2.id_n");

но хотелось чтоб выводилось не 6-ь столбцов в Gride а 3-и, ведь имена столбцов одинаковые.


 
Val ©   (2002-10-08 18:31) [3]

несколько путанный вопрос, может вы это хотите?
select *
from table1
union all
select *
from table2

но лучше бы, конечно, узнать задачу.


 
Balu ©   (2002-10-08 20:36) [4]

Add("SELECT Таблица1.Поле1, Таблица1.Поле2, Таблица1.Поле3,");
Add("Таблица2.Поле4, Таблица2.Поле5, Таблица2.Поле6");
Add("FROM Таблица1, Таблица2");
Add("WHERE Таблица1.id_n = Таблица2.id_n");

Или подправь точно, какие поля и от куда тебе нужны.

Второй способ: В DBGrid добавить только те поля, которые тебе нужны. Но первый вариант лучше.


 
Heathen ©   (2002-10-09 14:39) [5]


Спасибо Val@!
Попробовал, все работает!
Задача была совместить несколько таблиц, затем отфильтровать-ну со вторым все понятно.



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

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

Наверх




Память: 0.48 MB
Время: 0.01 c
1-101199
neodiX
2002-10-21 14:04
2002.10.31
Копирование десктопа. Непростое, а золотое.


14-101436
АндрюхаВИ
2002-10-09 13:19
2002.10.31
Sos. Просят сделать, незнаю сколько брать! Не игнорируйте, плиз


3-101112
Сергей Воропаев
2002-10-08 17:14
2002.10.31
Как сам файл базы держать внутри exe-шника?


14-101476
Mad_Ghost
2002-10-11 14:29
2002.10.31
есть число, как показать его в TEdit в шестнадцатеричном формате?


8-101380
kaif
2002-07-03 13:27
2002.10.31
OpenGL. Как восстановить 3D сцену из срезов?