求助一查询sql
表结构及内容如下:
ID PID DID KEY VALUE
425 applygoods.180001 90001 sys_tel 139988*****
426 applygoods.180001 90001 sys_name 1000800168
427 applygoods.180001 90001 htm_sl 32
428 applygoods.180001 90001 sys_dept 0102360601
429 applygoods.180001 90001 bpm_sqlb 1
430 applygoods.180001 90001 owner 1000800168
431 applygoods.180001 90001 bpm_wplb 3
432 applygoods.180001 90001 htm_xh xcvsdfsdf
433 applygoods.180001 90001 bpm_jfly 7
434 applygoods.180001 90001 opinion 同意
435 applygoods.180001 90001 htm_textarea xvcsdf
358 applygoods.150005 90001 htm_bz zxvcb eraw xcva swfewrgbcdezcvbbnfd
359 applygoods.150005 90001 sys_tel 139988*****
360 applygoods.150005 90001 htm_sl 5
361 applygoods.150005 90001 sys_name 1000800168
362 applygoods.150005 90001 bpm_sqlb 1
363 applygoods.150005 90001 bpm_wplb 4
364 applygoods.150005 90001 bpm_jfly 7
365 applygoods.150005 90001 htm_xh cvb23xcvsdfazvcbxcbzxcv
366 applygoods.150005 90001 htm_textarea xcvas324
367 applygoods.150005 90001 sys_dept 0102360601
368 applygoods.150005 90001 owner 1000800168
369 applygoods.150005 90001 opinion 不同意
425 applygoods.200002 90005 sys_tel 139988*****
426 applygoods.200002 90005 sys_name 1000800168
427 applygoods.200002 90005 htm_sl 32
428 applygoods.200002 90005 sys_dept 0102360601
429 applygoods.200002 90005 bpm_sqlb 1
430 applygoods.200002 90005 owner 1000800168
431 applygoods.200002 90005 bpm_wplb 3
432 applygoods.200002 90005 htm_xh xcvsdfsdf
433 applygoods.200002 90005 bpm_jfly 7
434 applygoods.200002 90005 opinion 同意
435 applygoods.200002 90005 htm_textarea xvcsdf
查询的需求是pid和did相同的记录为一组,按key里的value值查询满足条件的pid和did。例如查询条件为bpm_sqlb=1,bpm_wplb=3和bpm_jfly=7,查询pid和did的结果为applygoods.180001,90001和applygoods.200002,90005两条记录
恳请各位帮忙看看有没有什么好的思路,先谢谢了
附建表语句及数据
SQL code
create table TEST
(
ID VARCHAR2(255 CHAR) not null,
PID VARCHAR2(255 CHAR),
DID VARCHAR2(255 CHAR),
KEY VARCHAR2(255 CHAR),
VALUE VARCHAR2(2000 CHAR)
)
SQL code
insert into test (ID, PID, DID, KEY, VALUE)
values ('425', 'applygoods.180001', '90001', 'sys_tel', '139988*****');
insert into test (ID, PID, DID, KEY, VALUE)
values ('426', 'applygoods.180001', '90001', 'sys_name', '1000800168');
insert into test (ID, PID, DID, KEY, VALUE)
values ('427', 'applygoods.180001', '90001', 'htm_sl', '32');
insert into test (ID, PID, DID, KEY, VALUE)
values ('428', 'applygoods.180001', '90001', 'sys_dept', '0102360601');
insert into test (ID, PID, DID, KEY, VALUE)
values ('429', 'applygoods.180001', '90001', 'bpm_sqlb', '1');
insert into test (ID, PID, DID, KEY, VALUE)
values ('430', 'applygoods.180001', '90001', 'owner', '1000800168');
insert into test (ID, PID, DID, KEY, VALUE)
values ('431', 'applygoods.180001', '90001', 'bpm_wplb', '3');
insert into test