Выборка по трём столбцам

.NET
Дата: 26.02.2007 13:44:17
Помогите пожалуйста.

Есть таблица data со столбцами obj_id, agr_id, param_id, value.
Есть 100 наборов (obj_id0, agr_id0, param_id0), (obj_id1, agr_id1, param_id1),
(obj_id2, agr_id2, param_id2), ..., (obj_id99, agr_id99, param_id99).

Как получить множество значений value для этих наборов за один запрос?
orawish
Дата: 26.02.2007 13:46:27
типа, так:
select * from col
where (tname,cname) in (('EMP','DEPTNO'),('EMP','ENAME'))
andreymx
Дата: 26.02.2007 14:32:08
а наборы - в количестве 100 штук - всё-таки лучше в БД хранить
.NET
Дата: 26.02.2007 16:06:09
orawish
типа, так:
select * from col
where (tname,cname) in (('EMP','DEPTNO'),('EMP','ENAME'))


Вот так, кажись, пробывал не получалось, попробую ещё раз.
Спасибо.
.NET
Дата: 26.02.2007 16:07:11
andreymx
а наборы - в количестве 100 штук - всё-таки лучше в БД хранить

Как же их хранить, если набор каждый раз новый.
ORA-01403
Дата: 26.02.2007 16:14:11
.NET
Как же их хранить, если набор каждый раз новый.


Наборы-то как генерятся?
alex-ls
Дата: 26.02.2007 16:19:18
.NET
andreymx
а наборы - в количестве 100 штук - всё-таки лучше в БД хранить

Как же их хранить, если набор каждый раз новый.

INSERT?
.NET
Дата: 26.02.2007 16:20:20
ORA-01403
.NET
Как же их хранить, если набор каждый раз новый.


Наборы-то как генерятся?

Пользователь генерит. Какие хочет такие и может задать.
alex-ls
Дата: 26.02.2007 16:22:35
.NET
ORA-01403
.NET
Как же их хранить, если набор каждый раз новый.

Наборы-то как генерятся?

Пользователь генерит. Какие хочет такие и может задать.

коллекция + TABLE/CAST
.NET
Дата: 26.02.2007 16:25:35
orawish
типа, так:
select * from col
where (tname,cname) in (('EMP','DEPTNO'),('EMP','ENAME'))


Да так работает.


А если усложнить задачу. Есть ещё колонка time_stamp. Для наборов ('EMP_0','DEPTNO_0', 'TIME_STAMP_0'),('EMP_1','ENAME_1', 'TIME_STAMP_1'), ...
надо вывести строки у которых time_stamp больше чем указанный в наборе.