Computer >> 컴퓨터 >  >> 프로그램 작성 >> MySQL

이미 생성된 MySQL 테이블에서 새 열을 생성하고 채우는 방법은 무엇입니까?


먼저 테이블을 생성하겠습니다 -

mysql> create table DemoTable
   -> (
   -> Value1 int,
   -> Value2 int
   -> );
Query OK, 0 rows affected (0.77 sec)

삽입 명령을 사용하여 테이블에 일부 레코드 삽입 -

mysql> insert into DemoTable values(10,10);
Query OK, 1 row affected (0.19 sec)

mysql> insert into DemoTable values(20,30);
Query OK, 1 row affected (0.24 sec)

select 문을 사용하여 테이블의 모든 레코드 표시 -

mysql> select *from DemoTable;

출력

이것은 다음과 같은 출력을 생성합니다 -

+--------+--------+
| Value1 | Value2 |
+--------+--------+
|     10 |   10   |
|     20 |   30   |
+--------+--------+
2 rows in set (0.00 sec)

다음은 MySQL 테이블에 새로운 세 번째 열을 생성하고 채우는 쿼리입니다. 여기에서 부울은 정수 컨텍스트에서 정수로 간주됩니다. 즉, 값이 false이면 0이고 true이면 1입니다.

여기에서 생성된 열을 사용했습니다 -

mysql> alter table DemoTable add Value3 int generated always as (Value1 = Value2);
Query OK, 0 rows affected (0.51 sec)
Records: 0  Duplicates: 0  Warnings: 0

테이블의 모든 레코드를 다시 한 번 표시해 보겠습니다. -

mysql> select *from DemoTable;

출력

이것은 다음과 같은 출력을 생성합니다 -

+--------+--------+--------+
| Value1 | Value2 | Value3 |
+--------+--------+--------+
|     10 |   10   | 1      |
|     20 |   30   | 0      |
+--------+--------+--------+
2 rows in set (0.00 sec)