๐Ÿ”Raw query: record ์ƒ์„ฑ,์ˆ˜์ •,๊ฒ€์ƒ‰

yeeun leeยท2020๋…„ 5์›” 24์ผ
1

1. ํ…Œ์ด๋ธ”

create

ํ…Œ์ด๋ธ”์„ ๋งŒ๋“ค ๋•Œ create๋ฅผ ํ•˜๊ณ , ๊ฐ ์—ด์˜ data type, null, key, default ๊ฐ’์„ ์ •ํ•ด์ค€๋‹ค.

create table test01 (
no integer not null,
name varchar(30),
birthday date);

mysql> desc test01;
+----------+-------------+------+-----+---------+-------+
| Field    | Type        | Null | Key | Default | Extra |
+----------+-------------+------+-----+---------+-------+
| no       | int         | NO   |     | NULL    |       |
| name     | varchar(30) | YES  |     | NULL    |       |
| birthday | date        | YES  |     | NULL    |       |
+----------+-------------+------+-----+---------+-------+
3 rows in set (0.01 sec)

alter

์—ด์„ ์ถ”๊ฐ€/์ˆ˜์ •/์ œ๊ฑฐํ•˜๊ณ  ์‹ถ์„ ๊ฒฝ์šฐ ์•„๋ž˜ ํ‚ค์›Œ๋“œ๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค.


alter table test01 add ์—ด์ •์˜
alter table test01 modify ์—ด์ •์˜ # ์—ด ์†์„ฑ ๋ณ€๊ฒฝํ•  ๋•Œ
alter table test01 change ์—ด์ •์˜ # ์—ด ์ด๋ฆ„ ๋ณ€๊ฒฝํ•  ๋•Œ
alter table test01 drop ์—ด์ด๋ฆ„

#email column ์ถ”๊ฐ€ํ•˜๊ธฐ
alter table test01 add email varchar(50) not null;

mysql> desc test01;
+----------+-------------+------+-----+---------+-------+
| Field    | Type        | Null | Key | Default | Extra |
+----------+-------------+------+-----+---------+-------+
| no       | int         | NO   |     | NULL    |       |
| name     | varchar(30) | YES  |     | NULL    |       |
| birthday | date        | YES  |     | NULL    |       |
| email    | varchar(50) | NO   |     | NULL    |       |
+----------+-------------+------+-----+---------+-------+

# no์— pk ์ง€์ •ํ•ด์ฃผ๊ธฐ
mysql> alter table test01 add constraint pkey primary key(no);

+----------+-------------+------+-----+---------+-------+
| Field    | Type        | Null | Key | Default | Extra |
+----------+-------------+------+-----+---------+-------+
| no       | int         | NO   | PRI | NULL    |       |
| name     | varchar(30) | YES  |     | NULL    |       |
| birthday | date        | YES  |     | NULL    |       |
| email    | varchar(50) | NO   |     | NULL    |       |
+----------+-------------+------+-----+---------+-------+

insert

mysql> insert into 
test01 (no, name, birthday, email) 
values(1, '์ด์˜ˆ์€', 19910401, 'yeni@gg.com');

mysql> select * from test01;
+----+-----------+------------+-------------+
| no | name      | birthday   | email       |
+----+-----------+------------+-------------+
|  1 | ์ด์˜ˆ์€      | 1991-04-01 | yeni@gg.com |
+----+-----------+------------+-------------+
1 row in set (0.00 sec)

update

update ๋ช…๋ น์—์„œ๋Š” set ๊ตฌ๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค. ์ฑ…์„ ๋ณด๋ฉด์„œ ๋ ˆ์ฝ”๋“œ๋ฅผ ์—…๋ฐ์ดํŠธ ํ•˜๋ ค๊ณ  ์ฟผ๋ฆฌ๋ฅผ ์“ฐ๋‹ˆ๊นŒ, ์•„๋ž˜์™€ ๊ฐ™์ด ๋ฐ”๋€Œ์–ด๋ฒ„๋ ธ๋‹ค ๐Ÿ˜ต

where์„ ์“ฐ์ง€ ์•Š์œผ๋ฉด ํ•ด๋‹น ์—ด์˜ ๋ชจ๋“  ์ •๋ณด๋ฅผ ๋˜‘๊ฐ™์€ value๊ฐ’์œผ๋กœ ๋ฐ”๊ฟ”๋ฒ„๋ฆฐ๋‹ค. ์˜ˆ์‹œ๋Š” null๊ฐ’์ธ ํ–‰๋“ค์„ ๋ฐ”๊ฟ”์ฃผ๋Š” ๊ฒƒ์œผ๋กœ ์“ฐ์˜€๋Š”๋ฐ, where๊ตฌ๋ฅผ ํ†ตํ•ด ์›ํ•˜๋Š” ๊ฐ’๋“ค์„ ์ˆ˜์ •ํ•ด์ฃผ์–ด์•ผ ํ•˜๋Š” ๊ฒƒ์„ ๊ธฐ์–ตํ•˜์ž!

+----+-----------+------------+----------------+
| no | name      | birthday   | email          |
+----+-----------+------------+----------------+
|  1 | ์ด์˜ˆ์€      | 2000-04-01 | yeni@gg.com    |
|  2 | ๊น€์ฝ”๋“œ      | 2020-05-24 | code@naver.com |
+----+-----------+------------+----------------+

update test01 set birthday=19951220;

+----+-----------+------------+----------------+
| no | name      | birthday   | email          |
+----+-----------+------------+----------------+
|  1 | ์ด์˜ˆ์€      | 1995-12-20 | yeni@gg.com    |
|  2 | ๊น€์ฝ”๋“œ      | 1995-12-20 | code@naver.com |
+----+-----------+------------+----------------+

update test01 set birthday=19951220;

mysql>update test01 set birthday=20200401 where name='์ด์˜ˆ์€';
+----+-----------+------------+----------------+
| no | name      | birthday   | email          |
+----+-----------+------------+----------------+
|  1 | ์ด์˜ˆ์€      | 2020-04-01 | yeni@gg.com    |
|  2 | ๊น€์ฝ”๋“œ      | 1995-12-20 | code@naver.com |
+----+-----------+------------+----------------+

2. like

like ์ˆ ์–ด๋ฅผ ์‚ฌ์šฉํ•ด ํŒจํ„ด ๋งค์นญ์œผ๋กœ ๊ฒ€์ƒ‰ํ•  ์ˆ˜ ์žˆ๋‹ค. ํŒจํ„ด์„ ์ •์˜ํ•  ๋•Œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๋ฉ”ํƒ€ ๋ฌธ์ž๋Š” %์™€ _๊ฐ€ ์žˆ๋‹ค.

  • %๋Š” ๋ฌธ์ž์—ด
  • _๋Š” ๋ฌธ์ž ํ•˜๋‚˜

์–ธ๋”๋ฐ”๋กœ๋งŒ ๊ฒ€์ƒ‰ํ•  ๊ฒฝ์šฐ์— ๊ฒฐ๊ณผ๊ฐ€ ์•ˆ ๋‚˜์˜จ๋‹ค. ์™œ๋ƒํ•˜๋ฉด like '์ง€' ์ด๋Ÿฐ ์‹์œผ๋กœ ๊ฒ€์ƒ‰ํ•˜๊ฒŒ ๋˜๋ฉด ๋ฌธ์ž ํ•˜๋‚˜๊ฐ€ ์ง€์ด๊ณ  ๋์ธ ๊ฒฝ์šฐ๋ฅผ ๊ฒ€์ƒ‰ํ•˜๋Š” ๊ฒƒ์ด๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. ๋”ฐ๋ผ์„œ ๋’ค์— ๋ฌธ์ž์—ด์ด ์žˆ๋Š” ์• ๋“ค์„ ๊ฒ€์ƒ‰ํ•˜๋ ค๋ฉด '์ง€%' ์š”๋Ÿฐ ์‹์œผ๋กœ ๊ฒ€์ƒ‰ํ•ด์•ผ ํ•˜๋Š” ์ ์„ ์ฐธ๊ณ ํ•˜์ž.

๋งŒ์•ฝ ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด pow์ธ ์•”ํ˜ธ ํ™”ํ๋ฅผ ์•Œ๊ณ  ์‹ถ๋‹ค๋ฉด, ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๊ฒ€์ƒ‰ํ•ด์ฃผ๋ฉด ๋œ๋‹ค.

  • %keyword: ์ „๋ฐฉ ์ผ์น˜(์ฒซ ๋ฒˆ์งธ ๋‹จ์–ด์— ํฌํ•จ๋˜์–ด ์žˆ์„ ๋•Œ)
  • %keyword%: ์ค‘๊ฐ„ ์ผ์น˜
  • keyword%: ํ›„๋ฐฉ ์ผ์น˜
#์ „๋ฐฉ ์ผ์น˜
select currency_infos.code, currency_infos.algorithm 
from currency_infos where algorithm like '%pow';

+------+-----------+
| code | algorithm |
+------+-----------+
| BTC  | PoW       |
| BCH  | PoW       |
| BSV  | PoW       |
| LTC  | PoW       |
| ETC  | PoW       |
| HDAC | ePoW      |
+------+-----------+

%์˜ ์œ„์น˜์— ๋”ฐ๋ผ ์ „๋ฐฉ, ์ค‘๊ฐ„, ํ›„๋ฐฉ ์ผ์น˜๋ฅผ ๊ฒ€์ƒ‰ํ•  ์ˆ˜ ์žˆ๋‹ค๋Š”๋ฐ ๊ฒฐ๊ณผ ๊ฐ’๋งŒ ๋ดค์„ ๋•Œ๋Š” ์ž˜ ๋ชจ๋ฅด๊ฒ ๋‹ค. ์œ„์˜ ๊ฒฐ๊ณผ๊ฐ’๋„ ์ „๋ฐฉ์ผ์น˜๋กœ ๊ฒ€์ƒ‰ํ–ˆ๋Š”๋ฐ e๋กœ ์‹œ์ž‘ํ•˜๋Š” ๊ฐ’์ด ๋‚˜์™€๋ฒ„๋ ค์„œ ์กฐ๊ธˆ ํ—ท๊ฐˆ๋ ธ์ง€๋งŒ ์ „๋ฐฉ ์ผ์น˜๋Š” ์ฒซ ๋ฒˆ์งธ ๋ฌธ์ž์—ด์— ํฌํ•จ๋˜์–ด ์žˆ๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋งํ•˜๋Š” ๊ฒƒ ๊ฐ™๋‹ค.

3. ์—ฐ์‚ฐ

์—ฐ์‚ฐ ๊ด€๋ จ๋œ ๋ถ€๋ถ„์€ ๋Œ€๋ถ€๋ถ„ ์ฃผ์˜ํ•  ์‚ฌํ•ญ์ด ๋งŽ์•„์„œ ๋”ฐ๋กœ ๊ฒŒ์‹œ๋ฌผ์„ ๋งŒ๋“ค์—ˆ๋Š”๋ฐ, ์ด๋ฒˆ์— ์•”ํ˜ธํ™”ํ ๊ฑฐ๋ž˜์†Œ๋ฅผ ํ•˜๋ฉด์„œ ์—„์ฒญ๋‚˜๊ฒŒ ํ•„์š”ํ•œ ๋‚ด์šฉ์„ ์•Œ๊ฒŒ ๋๋‹ค.

์šฐ์„  ๋‘ ๋ฒˆ์งธ ํ”„๋กœ์ ํŠธ์—์„œ ์•”ํ˜ธํ™”ํ์˜ ์›ํ™” ํ™˜์‚ฐ ๊ฐ€๊ฒฉ์ด ๋„ˆ๋ฌด๋‚˜ ํŽธ์ฐจ๊ฐ€ ์ปธ๋‹ค. ์ตœ์†Œ ์ฃผ๋ฌธ ๊ฐ€๊ฒฉ์ด 500์›์ด์—ˆ๋Š”๋ฐ, ์–ด๋–ค ํ™”ํ๋Š” 1,000๋งŒ์›์ด๊ณ  ์–ด๋–ค ํ™”ํ๋Š” 20๋งŒ์›์ด์–ด์„œ ์ฃผ๋ฌธ ๊ฐ€๋Šฅ ์ˆ˜๋Ÿ‰์˜ ์†Œ์ˆ˜์ ํŽธ์ฐจ๊ฐ€ ์ปธ๋‹ค. (0.000001๊ฐœ๋ฅผ ์‚ด ์ˆ˜ ์žˆ๋Š” ํ™”ํ๋„ ์žˆ๊ณ , ์•„๋‹Œ ๊ฒƒ๋„ ์žˆ๊ณ )

๊ทธ๋Ÿฐ๋ฐ ์•„๋ž˜ ๋กœ์šฐ ์ฟผ๋ฆฌ๋ฅผ ํ™œ์šฉํ•œ orm์„ ์•Œ์•˜๋‹ค๋ฉด ๊ฒฐ๊ณผ๋ฅผ ๋” ๊นจ๋—ํ•˜๊ฒŒ ๋ณด๋‚ด์ค„ ์ˆ˜ ์žˆ์—ˆ์„ ๊ฒƒ ๊ฐ™๋‹ค.

mysql> select * from userwallets;
+----+---------------------+--------------+----------+-----------+
| id | volume              | price        | asset_id |  user_id  |
+----+---------------------+--------------+----------+-----------+
| 12 | 10100000.0000000000 | 0.0000000000 |       34 |         5 |
| 13 |        0.0000000000 | 0.0000000000 |        8 |         5 |
| 14 |    30000.0000000000 | 0.0000000000 |       34 |         7 |
| 15 |        0.0000000000 | 0.0000000000 |        8 |         7 |
+----+---------------------+--------------+----------+-----------+

mysql> select round(volume, 1) from userwallets;
# ํ•œ ๋ฒˆ์— ํ•ด๊ฒฐ! 
+------------------+
| round(volume, 1) |
+------------------+
|       10100000.0 |
|              0.0 |
|          30000.0 |
|              0.0 |
+------------------+
profile
์ด์‚ฌ๊ฐ„ ๋ธ”๋กœ๊ทธ: yenilee.github.io

0๊ฐœ์˜ ๋Œ“๊ธ€