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

MySQL의 여러 열에서 값을 계산하는 방법은 무엇입니까?

<시간/>

여러 열에서 값을 계산하려면 GROUP BY를 사용합니다. 다음은 구문입니다 -

yourColumnName1별로 yourColumnName1,sum(yourColumnName2*yourColumnName3) AS anyAliasName을 yourTableName 그룹에서 선택하십시오.

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

mysql> 테이블 생성 computeValueDemo -> ( -> Id int, -> ProductPrice int, -> ProductWeight int -> );Query OK, 영향을 받는 행 0개(0.56초)

다음은 삽입 명령을 사용하여 테이블에 레코드를 삽입하는 쿼리입니다 -

mysql> insert into calculateValueDemo values(100,35,5);Query OK, 1개의 row가 영향을 받았음(0.16초)mysql> insert into computeValueDemo values(101,50,3);Query OK, 1개의 row가 영향을 받음(0.16초) )mysql> computeValueDemo 값에 삽입(100,100,4); 쿼리 확인, 1개 행이 영향을 받았습니다(0.17초) mysql> computeValueDemo 값에 삽입(101,500,2), 쿼리 확인, 1개 행에 영향을 받음(0.22초)

다음은 select 문을 사용하여 테이블의 모든 레코드를 표시하는 쿼리입니다 -

mysql> countValueDemo에서 * 선택;

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

+------+--------------+-----------------+| 아이디 | 제품가격 | 제품무게 |+------+--------------+-----------------+| 100 | 35 | 5 || 101 | 50 | 3 || 100 | 100 | 4 || 101 | 500 | 2 |+------+--------------+---------------+4행 세트(0.00초) 

다음은 여러 열에서 값을 계산하는 쿼리입니다. -

mysql> Id,sum(ProductPrice*ProductWeight) AS Total from countValueDemo groupby Id 선택;

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

+------+-------+| 아이디 | 합계 |+-----+-------+| 100 | 575 || 101 | 1150 |+------+-------+2행 세트(0.00초)