DELETE Introduction


동영상 설명은 아래에 있습니다.

형식: DELETE FROM DATATYPE.KEY*
  예  : DELETE FROM STRING.KEY*

테스트 데이터 입력: Redis 명령으로 입력

도시 이름 데이터를 입력합니다.

Example

명령>mset mycity01 Seoul mycity02 Incheon mycity03 Chuncheon mycity04 Daejeon mycity05 Jeonju
결과>OK
명령>mset mycity06 Daegu mycity07 Gwangju mycity08 Busan mycity09 Jeju
결과>OK

SQL Insert 문으로 입력

Example

명령> insert into string values('mycity01','Seoul'), ('mycity02','Incheon'), ('mycity03','Chuncheon'),
('mycity04','Daejeon'), ('mycity05','Jeonju');
결과>5 inserted
명령> insert into string values('mycity06','Daegu'), ('mycity07','Gwangju'), ('mycity08','Busan'),
('mycity09','Jeju');
결과>4 inserted

Key로 삭제

DELETE FROM STRING.MYCITY09

키 하나를 지정하거나 '*'를 사용해서 여러 개 키를 삭제할 수 있습니다.

Example

명령>delete from string.mycity09;
결과> 1 keys deleted
명령>delete from string.mycity*;
결과> 8 keys deleted

WHERE

Where 조건으로 키를 삭제할 수 있습니다.
비교: =, <, <=, >, >=, !=, <>
삭제 명령은 키가 지워지므로 필요한 키를 다시 넣고 시작하세요.

Example

명령> select * from string.* order by value;
결과> 0) key|value
1) mycity08|Busan
2) mycity03|Chuncheon
3) mycity06|Daegu
4) mycity04|Daejeon
5) mycity07|Gwangju
6) mycity02|Incheon
7) mycity09|Jeju
8) mycity05|Jeonju
9) mycity01|Seoul
명령>delete from string.mycity* where value = 'Daejeon';
결과> 1 keys deleted
명령>delete from string.mycity* where value < 'Daejeon';
결과> 3 keys deleted
명령>delete from string.mycity* where value >= 'Jeonju';
결과> 2 keys deleted
명령> select * from string.* order by value;
결과> 0) key|value
1) mycity07|Gwangju
2) mycity02|Incheon
3) mycity05|Jeonju

BETWEEN

Example

명령>delete from string.mycity* where value BETWEEN 'Daejeon' and 'Jeju';
결과> 4 keys deleted
명령>delete from string.mycity* where value NOT BETWEEN 'Daejeon' and 'Jeju';
결과> 5 keys deleted

IN

Example

명령>delete from string.mycity* where key IN ('mycity03','mycity05') ;
결과> 2 keys deleted
명령>delete from string.mycity* where key NOT IN ('mycity03','mycity05');
결과> 7 keys deleted

GLOB

Glob는 *(별표), ?(물음표)를 사용하고, 대소문자를 구분합니다.

Example

명령>delete from string.mycity* where value GLOB 'Dae*';
결과> 2 keys deleted
명령>delete from string.mycity* where value GLOB 'Je??';
결과> 1 keys deleted
명령>delete from string.mycity* where value GLOB '*ju';
결과> 2 keys deleted
명령>delete from string.mycity* where value NOT GLOB '*ju';
결과> 4 keys deleted

LIKE

Like는 %(퍼센트), _(밑줄)을 사용하고, 대소문자를 구분하지 않습니다.

Example

명령>delete from string.mycity* where value LIKE 'dae%';
결과> 2 keys deleted
명령>delete from string.mycity* where value LIKE '%ju';
결과> 3 keys deleted
명령>delete from string.mycity* where value NOT LIKE '%ju';
결과> 4 keys deleted

Collection Data Type

키를 삭제하는 방법은 String과 같습니다.
주의할 점은 where 조건에 value를 사용할 경우에도 키가 삭제됩니다.
Value만 삭제할 경우 레디스 원래 명령을 사용하세요.

LIST

데스트 데이터를 입력합니다. Redis 명령으로 입력.

Example

명령>rpush mylist1 value10 value30 value50 value20 value40
결과>5
명령>rpush mylist2 110 120 130 140 150
결과>5
명령>rpush mylist3 AAA BBB CCC DDD EEE
결과>5

SQL Insert 문으로 입력

Example

명령> insert into list values('mylist1', 'value40', 'value20', 'value50', 'value30', 'value10');
결과>1 inserted
명령> insert into list values('mylist2', 150, 140, 130, 120, 110);
결과>1 inserted
명령> insert into list values('mylist3', 'EEE', 'DDD', 'CCC', 'BBB', 'AAA');
결과>1 inserted

LIST: 여러 가지 조건으로 리스트 키를 삭제합니다.

Where value 조건으로 삭제할 경우 다른 키가 삭제되는지 주의해 주세요.

Example

명령>delete from list.mylist1;
결과> 1 keys deleted
명령>delete from list.* where key >= 'mylist2';
결과> 2 keys deleted
데이터 입력
명령>delete from list.* where value = 'value10';
결과> 1 keys deleted
명령>delete from list.* where value > 'BBB';
결과> 1 keys deleted

SET

데스트 데이터를 입력합니다. Redis 명령으로 입력

Example

명령>sadd myset1 mem10 mem20 mem30 mem40 mem50
결과>5
명령>sadd myset2 10 20 30 40 50
결과>5
명령>sadd myset3 45.6 12.3 34.5 23.4 56.7
결과>5

SQL Insert 문으로 입력

Example

명령> insert into set values('myset1', 'mem10', 'mem20', 'mem30', 'mem40', 'mem50');
결과>1 inserted
명령> insert into set values('myset2', 10, 20, 30, 40, 50);
결과>1 inserted
명령> insert into set values('myset3', 45.6, 12.3, 34.5, 23.4, 56.7);
결과>1 inserted

SET: 여러 가지 조건으로 SET 키를 삭제합니다.

Where value 조건으로 삭제할 경우 다른 키가 삭제되는지 주의해 주세요.

Example

명령>delete from set.myset1;
결과>1 keys deleted
명령>delete from set.* where key >= 'myset2';
결과>2 keys deleted
데이터 입력
명령>delete from set.* where value = 'mem10';
결과>1 keys deleted
명령>delete from set.* where value > 40;
결과>2 keys deleted

ZSET

데스트 데이터를 입력합니다. Redis 명령으로 입력

Example

명령>zadd myzset1 10 value10 20 value20 30 value30 40 value40 50 value50
결과>5
명령>zadd myzset2 12.3 mem10 23.4 mem20 34.5 mem30 45.6 mem40 56.7 mem50
결과>5
명령>zadd myzset2 67.8 mem60 78.9 mem70 89.1 mem80 99.9 mem90 123.4 mem100
결과>10

SQL Insert 문으로 입력

Example

명령> insert into zset values('myzset1', 10, 'value10', 20, 'value20', 30, 'value30', 40, 'value40', 50, 'value50');
결과>1 inserted
명령> insert into zset values('myzset2', 12.3, 'mem10', 23.4, 'mem20', 34.5, 'mem30', 45.6, 'mem40',
56.7, 'mem50');
결과>1 inserted
명령> insert into zset values('myzset2', 67.8, 'mem60', 78.9, 'mem70', 89.1, 'mem80', 99.9, 'mem90',
123.4, 'mem100');
결과>1 inserted

ZSET: 여러 가지 조건으로 ZSET 키를 삭제합니다.

Where score 또는 value 조건으로 삭제할 경우 다른 키가 삭제되는지 주의해 주세요.

Example

명령>delete from zset.myzset1;
결과>1 keys deleted
명령>delete from zset.* where key >= 'myzset2';
결과>1 keys deleted
데이터 입력
명령>delete from zset.* where score = 10;
결과>1 keys deleted
명령>delete from zset.* where value > 'mem10';
결과>1 keys deleted

HASH

데스트 데이터를 입력합니다. Redis 명령으로 입력

Example

명령>hset myname1 name kim age 25 birthday 1995-01-01 city Seoul
결과>4
명령>hset myname2 name kang age 30 birthday 1990-01-01 city Daejeon
결과>4
명령>hset myname3 name park age 20 birthday 2000-01-01 city Seoul
결과>4
명령>hset myname4 name choe age 30 birthday 1990-01-01 city Daejeon
결과>4
명령>hset myname5 name lee age 35 birthday 1985-01-01 city Busan
결과>4

SQL Insert 문으로 입력

Example

명령> insert into hash values('myname1', 'name', 'kim', 'age', 25, 'birthday', '1995-01-01', 'city', 'Seoul'),
    ('myname2', 'name', 'kang', 'age', 30, 'birthday', '1990-01-01', 'city', 'Daejeon'),
    ('myname3', 'name', 'park', 'age', 20, 'birthday', '2000-01-01', 'city', 'Seoul'),
    ('myname4', 'name', 'choe', 'age', 30, 'birthday', '1990-01-01', 'city', 'Daejeon'),
    ('myname5', 'name', 'lee', 'age', 35, 'birthday', '1985-01-01', 'city', 'Busan');
결과>5 inserted

HASH: 여러 가지 조건으로 해시 키를 삭제합니다.

Where field 조건으로 삭제할 경우 다른 키가 삭제되는지 주의해 주세요.

Example

명령>delete from hash.myname1;
결과> 1 keys deleted
명령>delete from hash.* where key >= 'myname4';
결과> 2 keys deleted
명령>delete from hash.* where name = 'kang';
결과> 1 keys deleted
명령>delete from hash.* where age >= 20;
결과> 1 keys deleted

STREAM

데스트 데이터를 입력합니다. Redis 명령으로 입력

Example

명령>xadd sensor_1 * temp 10 humid 20 pres 30 vib 40
결과>"1623371553219-0"
명령>xadd sensor_2 * temp 124.7 humid 46.8 pres 150.4 flag AA1
결과>"1623371565459-0"
명령>xadd sensor_3 * temp 10
결과>"1623371579251-0"

SQL Insert 문으로 입력

Example

명령> insert into stream values('sensor_1', '*', 'temp', 10, 'humid', 20, 'pres', 30, 'vib', 40);
결과>1 inserted
명령> insert into stream values('sensor_2', '*', 'temp', 124.7, 'humid', 46.8, 'pres', 150.4, 'flag', 'AA1');
결과>1 inserted
명령> insert into stream values('sensor_3', '*', 'temp', 10);
결과>1 inserted

STREAM: 여러 가지 조건으로 스트림 키를 삭제합니다.

Where field 조건으로 삭제할 경우 다른 키가 삭제되는지 주의해 주세요.

Example

명령>delete from stream.sensor_1;
결과> 1 keys deleted
명령>delete from stream.* where key >= 'sensor_2';
결과> 2 keys deleted
데이터 입력
명령>delete from stream.* where humid = 20;
결과> 1 keys deleted
명령>delete from stream.* where temp >= 10;
결과> 2 keys deleted

SUBQUERY

데스트 데이터를 입력합니다. Redis 명령으로 입력

Example

명령>mset key1 value1 key2 value2 key3 value3 key4 value4 key5 value5
결과>OK
명령>sadd myset1 key1 key2 key3
결과>3

SQL Insert 문으로 입력

Example

명령> insert into string values('key1', 'value1'), ('key2', 'value2'), ('key3', 'value3'), ('key4', 'value4'),
('key5', 'value5');
결과>5 inserted
명령> insert into set values('myset1', 'key1', 'key2', 'key3');
결과>1 inserted

SUBQUERY: IN 조건으로 키를 삭제합니다.

Example

명령>delete from string.* where key in (select value from set.*);
결과> 3 keys deleted

동영상 설명

Redis SQL Delete


<< Insert Stream Delete Intro Delete String >>

Email 답글이 올라오면 이메일로 알려드리겠습니다.