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

집계 기능을 사용하지 않고 MySQL에 열 값을 추가하는 방법은 무엇입니까?

<시간/>

sum()과 같은 집계 함수를 사용하지 않고 열 값을 추가할 수 있습니다. 이를 위해 구문은 다음과 같습니다 -

SELECT *,(yourColumnName1+yourColumnName2+yourColumnName3,....N) as
anyVariableName from yourTableName;

위의 구문을 이해하기 위해 테이블을 생성해 보겠습니다. 테이블을 생성하는 쿼리는 다음과 같습니다 -

mysql> create table AddingColumnDemo
   -> (
   -> StudentId int,
   -> StudentName varchar(20),
   -> MathMarks int,
   -> PhysicsMarks int,
   -> ChemistryMarks int
   -> );
Query OK, 0 rows affected (0.82 sec)

insert 명령을 사용하여 테이블에 레코드를 삽입합니다. 쿼리는 다음과 같습니다 -

mysql> insert into AddingColumnDemo values(1,'John',35,45,76);
Query OK, 1 row affected (0.25 sec)

mysql> insert into AddingColumnDemo values(2,'Bob',67,76,88);
Query OK, 1 row affected (0.19 sec)

mysql> insert into AddingColumnDemo values(3,'Carol',45,56,43);
Query OK, 1 row affected (0.16 sec)

mysql> insert into AddingColumnDemo values(4,'Mike',82,75,71);
Query OK, 1 row affected (0.21 sec)

mysql> insert into AddingColumnDemo values(5,'Sam',92,89,88);
Query OK, 1 row affected (0.23 sec)

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

mysql> select *from AddingColumnDemo;

다음은 테이블의 레코드를 표시하는 출력입니다 -

+-----------+-------------+-----------+--------------+----------------+
| StudentId | StudentName | MathMarks | PhysicsMarks | ChemistryMarks |
+-----------+-------------+-----------+--------------+----------------+
|         1 | John        |        35 |           45 |             76 |
|         2 | Bob         |        67 |           76 |             88 |
|         3 | Carol       |        45 |           56 |             43 |
|         4 | Mike        |        82 |           75 |             71 |
|         5 | Sam         |        92 |           89 |             88 |
+-----------+-------------+-----------+--------------+----------------+
5 rows in set (0.00 sec)

이제 MySQL에서 열 값을 추가하는 쿼리를 구현해 보겠습니다. -

mysql> select *,(MathMarks+PhysicsMarks+ChemistryMarks) as TotalResult from AddingColumnDemo;

다음은 TotalResult 열의 열 값의 합계를 표시하는 출력입니다. -

+-----------+-------------+-----------+--------------+----------------+-------------+
| StudentId | StudentName | MathMarks | PhysicsMarks | ChemistryMarks | TotalResult |
+-----------+-------------+-----------+--------------+----------------+-------------+
|         1 | John        |        35 |           45 |             76 |         156 |
|         2 | Bob         |        67 |           76 |             88 |         231 |
|         3 | Carol       |        45 |           56 |             43 |         144 |
|         4 | Mike        |        82 |           75 |             71 |         228 |
|         5 | Sam         |        92 |           89 |             88 |         269 |
+-----------+-------------+-----------+--------------+----------------+-------------+
5 rows in set (0.00 sec)