select_subquery
SELECT Subquery
Subquery로 데이터를 조회
Subquery로 데이터를 조회합니다.
테스트 데이터 입력: Redis 명령으로 입력
Example
명령> | mset id_0001 myname1 id_0002 myname2 id_0003 myname3 id_0004 myname4 id_0005 myname5 |
결과> | OK |
명령> | rpush id_list id_0001 id_0002 id_0003 id_0004 id_0005 |
결과> | 5 |
명령> | sadd id_set id_0001 id_0002 id_0003 id_0004 id_0005 |
결과> | 5 |
명령> | zadd id_zset 10 id_0001 20 id_0002 30 id_0003 40 id_0004 50 id_0005 |
결과> | 5 |
SQL Insert 문으로 입력
Example
명령> |
insert into string values('id_0001', 'myname1'), ('id_0002', 'myname2'), ('id_0003', 'myname3'), ('id_0004', 'myname4'), ('id_0005', 'myname5'); |
결과> | 5 inserted |
명령> | insert into list values('id_list', 'id_0005', 'id_0004', 'id_0003', 'id_0002', 'id_0001'); |
결과> | 1 inserted |
명령> | insert into set values('id_set', 'id_0001', 'id_0002', 'id_0003', 'id_0004', 'id_0005'); |
결과> | 1 inserted |
명령> | insert into zset values('id_zset', 10, 'id_0001', 20, 'id_0002', 30, 'id_0003', 40, 'id_0004', 50, 'id_0005'); |
결과> | 1 inserted |
SELECT * FROM STRING.ID* WHERE IN (SELECT ...)
Main query String - Subquery List
Example
명령> | select * from string.id* where key in (select value from list.id_list); opcode |
결과> |
0) key|value 1) id_0001|myname1 2) id_0002|myname2 3) id_0003|myname3 4) id_0004|myname4 5) id_0005|myname5 |
Main query String - Subquery Set
Example
명령> | select * from string.id* where key in (select value from set.id_set); opcode |
결과> |
0) key|value 1) id_0001|myname1 2) id_0002|myname2 3) id_0003|myname3 4) id_0004|myname4 5) id_0005|myname5 |
Main query String - Subquery ZSet
Example
명령> | select * from string.id* where key in (select value from zset.id_zset); opcode |
결과> |
0) key|value 1) id_0001|myname1 2) id_0002|myname2 3) id_0003|myname3 4) id_0004|myname4 5) id_0005|myname5 |
Main query String - Subquery Hash
Example
명령> | select * from string.id* where value in (select key from hash.myname*); opcode |
결과> |
0) key|value 1) id_0001|myname1 2) id_0002|myname2 3) id_0003|myname3 4) id_0004|myname4 5) id_0005|myname5 |
SELECT * FROM LIST.ID_LIST WHERE IN (SELECT ...)
Main query List - Subquery String
Example
명령> | select * from list.id_list where value in (select key from string.id_00*); opcode |
결과> |
0) key|value 1) id_list|id_0001 2) id_list|id_0002 3) id_list|id_0003 4) id_list|id_0004 5) id_list|id_0005 |
Main query Set - Subquery String
Example
명령> | select * from set.id_set where value in (select key from string.id_00*); opcode |
결과> |
0) key|value 1) id_set|id_0004 2) id_set|id_0003 3) id_set|id_0002 4) id_set|id_0001 5) id_set|id_0005 |
Main query ZSet - Subquery String
Example
명령> | select * from zset.id_zset where value in (select key from string.id_00*); opcode |
결과> |
0) key|score|value 1) id_zset|10.0|id_0001 2) id_zset|20.0|id_0002 3) id_zset|30.0|id_0003 4) id_zset|40.0|id_0004 5) id_zset|50.0|id_0005 |
Main query Hash - Subquery String
Example
명령> | select * from hash.myname* where key in (select value from string.id_00*); opcode |
결과> |
0) key|name|age|birthday|city|hobby 1) myname1|kim|25|1995-01-01|Seoul|(nil) 2) myname2|kang|30|1990-01-01|Daejeon|(nil) 3) myname3|park|20|2000-01-01|Seoul|ski,bike 4) myname4|choe|30|1990-01-01|Daejeon|(nil) 5) myname5|lee|35|1985-01-01|Busan|(nil) |
OPCODE
select * from string.id* where key in (select value from list.id_list);
select * from string.id* where key in (select value from set.id_set);
select * from string.id* where key in (select value from zset.id_zset);
select * from string.id* where value in (select key from hash.myname*);
select * from list.id_list where value in (select key from string.id_00*);
select * from set.id_set where value in (select key from string.id_00*);
select * from zset.id_zset where value in (select key from string.id_00*);
select * from hash.myname* where key in (select value from string.id_00*);
<< Select Stream | Select Subquery | Select Union >> |
---|
Email
답글이 올라오면 이메일로 알려드리겠습니다.