![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Выборка [D6, MSSQL]
wild_arg © (2004-08-10 09:26:00)Eсть таблица :
_____
a | x
b | y
a | y
c | z
b | x
b | z
a | z
Надо выбрать только те элементы из первого столбца, которые встречаются в таблице и с "x", и с "у", и с "z"
т.е. результатом будет:
a
b
как такое сделать попроще - чё то я туплю
Соловьев (2004-08-10 09:47:00) [21]
> Where (Field2 = 'x') or (Field2 = 'y') or (Field2 = 'z')!!!
остался без руки - так как надо AND
46_55_41_44 (2004-08-10 09:44:00) [22]Слушайте народ вы чего мучаетесь?
Это же просто как 2Х2...
Select Field1 from Table1
Where (Field2 = 'x') or (Field2 = 'y') or (Field2 = 'z')!!!
Будет работать!
Даю руку на отсечение!!!
Silver Alex (2004-08-10 09:40:00) [23]может быть так?
select t1.Field1 from Table t1
where
exists (select t2.field1 from table t2
where
t2.field1=t1.field1
and t2.field2 ='x'
)
and exists (select t3.field1 from table t3
where
t3.field1=t1.field1
and t3.field2='y'
)
and exists (select t4.field1 from table t4
where
t4.field1=t1.field1
and t4.field2 ='z'
)
Sandman25 (2004-08-10 09:33:00) [24]:)
Я, наверное, тоже не проснулся - лень было полный ответ написать.
Соловьев (2004-08-10 09:32:00) [25]
> Второй вариант ошибочен.
да и первый, что-то я не проснулся:)
Sandman25 (2004-08-10 09:31:00) [26][2] Соловьев © (10.08.04 09:29)
Второй вариант ошибочен.
Соловьев (2004-08-10 09:31:00) [27]
> select field1
> from table
> where field2 in ("x","y","z")
неа, надо через AND
Соловьев (2004-08-10 09:29:00) [28]select field1
from table
group by field1
having count(field2)=3
или
select field1
from table
where field2 in ("x","y","z")
Sandman25 (2004-08-10 09:28:00) [29]одна таблица используется 3 раза с разными алиасами