MySQL
 Computer >> コンピューター >  >> プログラミング >> MySQL

複数の列を持つMySQLの複数のCOUNT?


集計関数SUM()をIF()と一緒に使用できます。まずテーブルを作成しましょう-

mysql> create table DemoTable
(
   FirstName varchar(100),
   LastName varchar(100)
);
Query OK, 0 rows affected (2.80 sec)

挿入コマンド-

を使用して、テーブルにいくつかのレコードを挿入します
mysql> insert into DemoTable values('Adam','Smith');
Query OK, 1 row affected (0.25 sec)
mysql> insert into DemoTable values('John','Smith');
Query OK, 1 row affected (0.36 sec)
mysql> insert into DemoTable values('John','Doe');
Query OK, 1 row affected (1.38 sec)
mysql> insert into DemoTable values('Bob','Doe');
Query OK, 1 row affected (0.16 sec)
mysql> insert into DemoTable values('Sam','Smith');
Query OK, 1 row affected (0.25 sec)

selectステートメントを使用してテーブルのすべてのレコードを表示する-

mysql> select *from DemoTable;

これにより、次の出力が生成されます-

+-----------+----------+
| FirstName | LastName |
+-----------+----------+
| Adam      | Smith    |
| John      | Smith    |
| John      | Doe      |
| Bob       | Doe      |
| Sam       | Smith    |
+-----------+----------+
5 rows in set (0.00 sec)

これは、複数の列を持つMySQLの複数のCOUNTへのクエリです。

mysql> select sum(if(FirstName='John',1,0)) as John_Count,
sum(if(LastName='Smith',1,0)) as Smith_Count from DemoTable;

これにより、次の出力が生成されます-

+------------+-------------+
| John_Count | Smith_Count |
+------------+-------------+
|         2 |            3 |
+------------+-------------+
1 row in set (0.00 sec)

  1. Javaを使用してMySQLテーブルの列数をカウントする

    これには、ResultSetMetaDataを使用します。まずテーブルを作成しましょう- mysql> create table DemoTable    -> (    -> StudentId int NOT NULL AUTO_INCREMENT PRIMARY KEY,    -> StudentFirstName varchar(20),    -> StudentLastName varchar(20)    -> ); Query OK, 0 r

  2. MySQLでのAUTO_INCREMENT列の操作

    MySQLでAUTO_INCREMENT列を操作する方法を理解しましょう- AUTO_INCREMENT属性は、新しい行の一意のIDを生成するために使用されます。このステートメントがどのように機能するかを見てみましょう。その前に、以下のクエリを検討してください- クエリ CREATE TABLE tableName (    id MEDIUMINT NOT NULL AUTO_INCREMENT,    name CHAR(30) NOT NULL, PRIMARY KEY (id) ); INSERT INTO tableName (name