MySQL

 Computer >> コンピューター >  >> プログラミング >> MySQL
  1. SQLで点数から学生の達成率(パーセンテージ)を計算し、結果にパーセント記号(%)を付ける方法

    MySQLでは、CONCAT()関数とROUND()関数を組み合わせることで、学生の点数から達成率を計算し、結果にパーセント記号(%)を付けて表示できます。ここでは、5科目の合計点をもとに達成率を求める手順を紹介します。1. テーブルの作成まず、点数を格納するテーブルを作成します。mysql> create table DemoTable ( Marks int ); Query OK, 0 rows affected (0.62 sec)2. レコードの挿入INSERTコマンドを使って、テーブルに点数データを登録します。mysql> insert into DemoTab

  2. 【MySQL】FLOOR()関数を使って小数部分が整数(.00)のレコードだけを抽出する方法

    DECIMAL型のカラムから「55.00」や「9.00」のように小数部分が0(整数値と等しい)レコードだけを取り出したい場合、FLOOR()関数を使うと簡単に実現できます。FLOOR()関数による抽出の考え方FLOOR()は引数の値を切り捨てて整数にする関数です。元の値とFLOOR()した値が一致していれば、その値は小数部分を持たない(小数点以下が0の)数値だと判断できます。たとえば、5.23、8.76、12.00、22.68といったレコードの中から、12.00のようなレコードのみを抽出するイメージです。1. テーブルを作成するまず、検証用のテーブルを作成します。mysql> creat

  3. MySQLで数値の累乗を計算するには?^演算子ではなくPOW()関数を使う方法

    MySQLでのべき乗計算に^演算子は使える?答えは「いいえ」です。MySQLにおいて ^ 演算子はビット単位のXOR(排他的論理和)を表す演算子であり、べき乗の計算には使用できません。ある数値を別の数値でべき乗した結果を求めるには、POW() 関数または POWER() 関数を使用します。これら2つの関数は同義であり、どちらを使っても同じ結果が得られます。サンプルテーブルの作成まず、以下のようにテーブルを作成します。mysql> create table DemoTable ( BaseValue int, PowerValue float ); Query OK, 0

  4. MySQLでAUTO_INCREMENTの値を1から再スタートさせる方法

    MySQLでAUTO_INCREMENT(自動採番)の値を1から振り直したい場合は、TRUNCATEでテーブルを初期化するのが最も簡単な方法です。ここでは、実際にサンプルテーブルを作成し、動作を順番に確認していきましょう。サンプルテーブルの作成まず、AUTO_INCREMENT列を持つテーブルを作成します。mysql> create table DemoTable ( StudentId int NOT NULL AUTO_INCREMENT PRIMARY KEY ); Query OK, 0 rows affected (1.44 sec)次に、INSERTコマンドで複数のレ

  5. MySQLのDATE_FORMAT()とSTR_TO_DATE()を使って日付をフォーマットする方法

    はじめにMySQLでは、STR_TO_DATE()関数とDATE_FORMAT()関数を組み合わせることで、「August 04,2019」のような文字列として保存された日付を「2019-08-04」のような標準的な形式(YYYY-MM-DD)に変換できます。各関数の役割は以下の通りです。STR_TO_DATE(): 指定したフォーマットに従って文字列をDATE型に変換するDATE_FORMAT(): 日付の値を指定したフォーマットの文字列に整形するそれでは、実際の手順を見ていきましょう。手順1:テーブルを作成するまず、サンプル用のテーブルを作成します。mysql> create tab

  6. MySQLでテキストフィールドから数字のみを抽出する方法を解説

    MySQLでは、テキスト型(TEXT)のカラムに保存されたデータに、数字以外の記号や文字が混在していることがあります。例えば、ハイフン(-)、カンマ(,)、スペース、引用符などが含まれる場合、それらを取り除いて数字だけを抽出したいケースは少なくありません。本記事では、REPLACE関数を組み合わせることで、テキストフィールドから数字のみを抽出する方法を、実際のSQL文と実行結果とともにわかりやすく解説します。1. サンプルテーブルを作成するまず、テキスト型のカラムを持つテーブルを作成します。mysql> create table DemoTable ( Number text )

  7. MySQLのLIKE句を2回組み合わせて、姓名が1つのカラムに格納されたテーブルから特定の名前を抽出する方法

    MySQLでは、姓名が「FirstName LastName」の形式で1つのカラムにまとめて格納されているテーブルから、名と姓の両方が一致するレコードを抽出したいケースがあります。そんなときに役立つのが、LIKE句を2回使用してAND条件で組み合わせる方法です。本記事では、実際のサンプルコードを使いながら、その手順をわかりやすく解説します。 1. サンプルテーブルの作成 まず、CREATE TABLE文でサンプル用のテーブルを作成します。 mysql> create table DemoTable ( StudentId int NOT NULL AUTO_INCREMENT P

  8. MySQLでテーブル内の最新3件の日付を重複なしで取得するクエリの書き方

    テーブルから最新の日付を取得するには、ORDER BY DESCを使って日付レコードを降順に並べ替えます。今回は3件だけ取得したいので、LIMIT 3を組み合わせます。さらに、同じ日付が複数登録されている場合に備えて、DISTINCTで重複を除外するのがポイントです。 サンプルテーブルの作成 まず、日付を格納するテーブルを作成しましょう。 mysql> create table DemoTable ( AdmissionDate date ); Query OK, 0 rows affected (0.56 sec) レコードの挿入 INSERTコマンドを使って、テーブルにいくつ

  9. MySQLのCOALESCE関数とは?NULL値と非NULL値の評価順序を実例で解説

    MySQLのCOALESCE()関数は、指定された複数の引数を左から右へ順番に評価し、最初に見つかった非NULL(NON-NULL)値を返す関数です。もし最初の引数がNULLでなければそのまま返され、NULLだった場合は次の引数へと評価が進みます。すべての引数がNULLの場合は、最終的にNULLが返されます。この記事では、実際にテーブルを作成してデータを操作しながら、COALESCE関数の動作を具体的に確認していきます。1. サンプルテーブルの作成まず、2つの整数型カラムを持つテーブルを作成します。mysql> create table DemoTable ( Number1 i

  10. MySQLの1つのクエリで複数テーブルの行数を同時にカウントする方法

    はじめに MySQLでは、サブクエリ(スカラーサブクエリ)を組み合わせることで、1つのSELECT文で複数のテーブルの行数を同時に取得できます。この記事では、実際にテーブルを作成し、データを挿入して、2つのテーブルの行数を1回のクエリでカウントする手順を解説します。 手順1:1つ目のテーブルを作成する まず、以下のようにテーブルを作成します。 mysql> create table DemoTable1 ( Name varchar(40) ); Query OK, 0 rows affected (0.81 sec) レコードの挿入 INSERTコマンドを使って、いくつかの

  11. MySQLでユーザー定義変数の値に最も近いレコードをテーブルから取得する方法

    MySQLでは、ABS()関数とORDER BY句を組み合わせることで、ユーザー定義変数に格納した値に最も近いレコードを簡単に取得できます。この記事では、実際にテーブルを作成し、指定した値に最も近いレコードを取り出す手順を詳しく解説します。 1. サンプルテーブルの作成 まず、CREATE TABLE文を使ってテーブルを作成します。 mysql> create table DemoTable ( CustomerId int NOT NULL AUTO_INCREMENT PRIMARY KEY, ProductAmount int ); Query OK, 0 row

  12. 【MySQL】SUM関数で合計値を計算し、テーブルを更新して最後の列に結果を表示する方法

    はじめに SUM()関数で計算した合計値を変数に格納し、UPDATE文を使ってテーブルを更新する方法を解説します。まずはサンプルとなるテーブルを作成しましょう。 mysql> create table DemoTable ( Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, Value int ); Query OK, 0 rows affected (0.61 sec) テストデータの挿入 INSERT文を使って、テーブルにいくつかのレコードを挿入します。 mysql> insert into DemoTable(Val

  13. MySQLの単一クエリで一時テーブルに複数の値を挿入する方法

    MySQLでは、単一のINSERTクエリを使って一時テーブルに複数の値を一度に挿入できます。VALUES句にカンマ区切りで値を並べるだけで、複数行のデータを効率的に登録可能です。ここでは、その具体的な手順を順番に見ていきましょう。 手順1:一時テーブルを作成する まず、CREATE TEMPORARY TABLE文を使って一時テーブルを作成します。 mysql> create temporary table DemoTable (     SerialNumber int ); Query OK, 0 rows affected (0.00 sec

  14. MySQLで列の値が文字列か数値かを判定して取得する方法

    MySQLで列の値が文字列か数値かを判別する方法 MySQLでは、正規表現を使ったREGEXP演算子を利用することで、列の値が文字列なのか数値なのかを簡単に判別できます。 基本構文 文字列の値のみを取得したい場合は、以下の構文を使用します。 select *from yourTableName where yourColumnName NOT regexp ^[0-9]+$; 数値のみを取得したい場合は、以下の構文を使用します。 select *from yourTableName where yourColumnName regexp ^[0-9]+$; ここで使われている正規表現 ^[0

  15. 【MySQL】CREATE TABLE ... LIKEで既存テーブルと同じ構造の新しいテーブルを作成する方法

    MySQLでは、CREATE TABLE ... LIKE構文を使用することで、既存のテーブルと同じ構造(カラム定義、PRIMARY KEY、AUTO_INCREMENT属性など)を持つ新しいテーブルを簡単に作成できます。ここでは、実際の手順を順番に解説します。 ステップ1:元となるテーブルを作成する まず、コピー元となるテーブルを作成します。 mysql> create table DemoTable1 (     EmployeeId int NOT NULL AUTO_INCREMENT PRIMARY KEY,   &

  16. MySQLでINSERT文がエラーになる原因とは?VALUEとVALUESの違いを解説

    MySQLでINSERT INTO文を実行した際にエラーが発生する場合、その原因の多くはVALUE()という誤った構文の使用にあります。正しくはVALUES()を使用する必要があります。エラーの原因:VALUE() ではなく VALUES() を使うMySQLでは、複数形の「VALUES」が正式なキーワードとして定義されています。単数形の「VALUE」を指定すると構文エラーとなるため、注意が必要です。INSERTクエリの正しい構文は以下の通りです。INSERT INTO テーブル名 VALUES(値1, 値2, .......N);実際に試してみよう1. テーブルを作成するまず、サンプル用のテ

  17. MySQLで複数のSELECTクエリを一度に実行する方法【DELIMITER活用】

    MySQLで複数のSELECTクエリを一度に実行するには、DELIMITERの概念を利用します。この記事では、実際にテーブルを作成しながら、複数のSELECT文をまとめて実行する手順をわかりやすく解説します。 準備:サンプルテーブルの作成 まず、1つ目のテーブルを作成します。 mysql> create table DemoTable1 ( Title text )ENGINE=MyISAM; Query OK, 0 rows affected (0.30 sec) 次に、INSERTコマンドを使ってテーブルにレコードを挿入します。 mysql> insert into D

  18. MySQLで2つのテーブルの文字列を集計する方法|COUNT(*)とUNION ALLの使い方

    MySQLでレコード数を数えるには COUNT(*) を使用します。さらに、UNION ALL を組み合わせることで、複数のテーブルにまたがる文字列値の合計カウントを取得できます。この記事では、2つのテーブルに格納された文字列データを統合して、各文字列の出現回数を集計する手順を具体的な例とともに解説します。1. 最初のテーブルを作成するまず、CREATE TABLE文を使って最初のテーブルを作成します。mysql> create table DemoTable1 (    Name varchar(20) ); Query OK, 0 rows affected (0

  19. MySQLでUPDATE時に値が同一の場合、データは上書きされるのか?動作を検証

    結論から言うと、MySQLのUPDATE文は、設定しようとする値がすでにテーブル内の値と同一である場合、その値を上書きしません。実際にサンプルテーブルを作成して、この動作を確認してみましょう。1. 検証用テーブルの作成まず、学生ID・数学の点数・MySQLの点数を格納するテーブルを作成します。mysql> create table DemoTable ( StudentId int, StudentMathMarks int, StudentMySQLMarks int ); Query OK, 0 rows affected (0.46 sec)2. テストデー

  20. MySQLで特定の月のレコードに基づいて選択した列の値を合計する方法

    はじめにMySQLでは、MONTH()関数とSUM()関数を組み合わせることで、日付データから特定の月に該当するレコードだけを抽出し、その列の値を合計することができます。この記事では、実際のテーブル作成から集計までの手順を順番に解説します。1. テーブルの作成まず、サンプル用のテーブルを作成しましょう。mysql> create table DemoTable (    Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,    PurchaseDate date,    SalePrice i

Total 4564 -コンピューター  FirstPage PreviousPage NextPage LastPage CurrentPage:56/229  20-コンピューター/Page Goto:1 50 51 52 53 54 55 56 57 58 59 60 61 62