行の値を合計して結果を並べ替えるMySQLクエリ?
このために、ORDERBY句とともにGROUPBYを使用できます。まずテーブルを作成しましょう-
mysql> create table DemoTable1499 -> ( -> StudentName varchar(20), -> StudentMarks int -> ); Query OK, 0 rows affected (0.46 sec)
挿入コマンド-
を使用して、テーブルにいくつかのレコードを挿入しますmysql> insert into DemoTable1499 values('Chris',56); Query OK, 1 row affected (0.13 sec) mysql> insert into DemoTable1499 values('David',78); Query OK, 1 row affected (0.13 sec) mysql> insert into DemoTable1499 values('Bob',98); Query OK, 1 row affected (0.18 sec) mysql> insert into DemoTable1499 values('Chris',45); Query OK, 1 row affected (0.12 sec) mysql> insert into DemoTable1499 values('David',98); Query OK, 1 row affected (0.12 sec) mysql> insert into DemoTable1499 values('Bob',58); Query OK, 1 row affected (0.11 sec)>
selectステートメントを使用してテーブルのすべてのレコードを表示する-
Mysql> select * from DemoTable1499;
これにより、次の出力が生成されます-
+-------------+--------------+ | StudentName | StudentMarks | +-------------+--------------+ | Chris | 56 | | David | 78 | | Bob | 98 | | Chris | 45 | | David | 98 | | Bob | 58 | +-------------+--------------+ 6 rows in set (0.00 sec)
以下は、行の値を合計して結果を並べ替えるクエリです-
mysql> select StudentName,sum(StudentMarks) as TotalSum from DemoTable1499 -> group by StudentName -> order by TotalSum desc;
これにより、次の出力が生成されます-
+-------------+----------+ | StudentName | TotalSum | +-------------+----------+ | David | 176 | | Bob | 156 | | Chris | 101 | +-------------+----------+ 3 rows in set (0.00 sec)
-
MySQLクエリでパーセンテージを計算し、結果を四捨五入します
このために、CONCAT()とround()を使用できます。まずテーブルを作成しましょう- mysql> create table DemoTable1844 ( Number int, TotalNumber int ); Query OK, 0 rows affected (0.00 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable1
-
MySQLでSUMとFORMATを組み合わせて、結果をフォーマットします
テーブルを作成しましょう- mysql> create table DemoTable1950 ( Amount float ); Query OK, 0 rows affected (0.00 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable1950 values(45.60); Query OK, 1 row affected (0.00 sec) mysql> insert into DemoTable19