MySQLクエリで列を分割して従業員の月給を取得する方法
MySQLで従業員の月給を取得する方法
年間給与が保存されているテーブルから、給与列を12で割ることで月給を簡単に算出できます。ここでは、サンプルテーブルを作成し、実際に月給を取得するクエリの手順を解説します。
1. テーブルの作成
まず、従業員情報を格納するテーブルを作成しましょう。
mysql> create table DemoTable1957
(
EmployeeId int,
EmployeeName varchar(20),
EmployeeSalary int
);
Query OK, 0 rows affected (0.00 sec)2. レコードの挿入
insertコマンドを使用して、テーブルにいくつかのレコードを挿入します。
mysql> insert into DemoTable1957 values(1,'Chris',240000); Query OK, 1 row affected (0.00 sec) mysql> insert into DemoTable1957 values(2,'Bob',120000); Query OK, 1 row affected (0.00 sec) mysql> insert into DemoTable1957 values(3,'David',180000); Query OK, 1 row affected (0.00 sec) mysql> insert into DemoTable1957 values(4,'Mike',650000); Query OK, 1 row affected (0.00 sec)
3. テーブルの内容を確認
select文を使用して、テーブル内のすべてのレコードを表示します。
mysql> select * from DemoTable1957;
これにより、次のような出力が得られます。
+------------+--------------+----------------+ | EmployeeId | EmployeeName | EmployeeSalary | +------------+--------------+----------------+ | 1 | Chris | 240000 | | 2 | Bob | 120000 | | 3 | David | 180000 | | 4 | Mike | 650000 | +------------+--------------+----------------+ 4 rows in set (0.00 sec)
4. 月給を取得するクエリ
従業員の月給を取得するには、SELECT文の中でEmployeeSalary列を12で割ります。AS句を使うことで、計算結果に「MonthlySalary」という別名を付けて見やすく表示できます。
mysql> select EmployeeName,EmployeeSalary/12 As MonthlySalary from DemoTable1957;
実行結果は以下のとおりです。
+--------------+---------------+ | EmployeeName | MonthlySalary | +--------------+---------------+ | Chris | 20000.0000 | | Bob | 10000.0000 | | David | 15000.0000 | | Mike | 54166.6667 | +--------------+---------------+ 4 rows in set (0.00 sec)
まとめ
このように、SELECT文の中で列に対して算術演算を行うことで、年間給与を12で割った月給を簡単に求められます。小数点以下の桁数を調整したい場合は、ROUND()関数やFORMAT()関数を組み合わせると、さらに読みやすい出力にすることができます。
-
【MySQL】SUM()関数を使って単一クエリで特定の列値ごとの複数カウントを取得する方法
特定の列値に基づくカウントを1つのMySQLクエリで複数取得するには、集計関数SUM()を活用します。MySQLでは「列 = 値」という条件式が真なら1、偽なら0を返すため、その結果をSUM()で合計することで、条件に一致する行数を数えられます。まずはサンプル用のテーブルを作成しましょう。 mysql> create table DemoTable1790 ( Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, Name varchar(20), Score int ); Query OK, 0 rows af
-
MySQLのSELECT文で特定のカラム(列)のレコードを取得する方法
はじめにMySQLでSELECTクエリを実行する際、SELECT *を使うとすべてのカラムが取得されますが、カラム名を明示的に指定すれば、必要なカラム(列)のデータだけを効率的に取り出せます。この記事では、サンプルテーブルを作成しながら、特定のカラムのレコードを取得する手順を解説します。1. テーブルの作成まず、CREATE TABLE文でサンプル用のテーブルを作成しましょう。mysql> create table DemoTable1837 ( StudentId int NOT NULL AU