MySQL

 Computer >> コンピューター >  >> プログラミング >> MySQL
  1. MySQLで1つのクエリだけでブーリアンフィールド(真偽値)を反転させる方法

    はい、MySQLのIF()関数を使えば、ブーリアンフィールド(真偽値カラム)の値を1つのクエリで反転させることができます。基本構文ブーリアンフィールドを反転させるための基本的な構文は以下の通りです。UPDATE テーブル名 SET カラム名 = IF(カラム名, 0, 1);この構文では、カラムの値が真(1)であれば0に、偽(0)であれば1に切り替わります。それでは、実際にテーブルを作成して動作を確認してみましょう。サンプルテーブルの作成まず、以下のクエリでテーブルを作成します。mysql> create table ReverseBooleanField -> (

  2. MySQLで1行(同一レコード)の複数列の値を合計する方法【NULL値への対処法も解説】

    MySQLでは、SUM()関数は通常「列方向」の合計に使われますが、1つの行内にある複数の列の値を合計したい場合もあります。その場合は、算術演算子「+」を使って列同士を加算することで実現できます。ここでは、NULL値が含まれる場合と含まれない場合の2つのケースに分けて、正しく合計を求める方法を解説します。Case 1:NULL値が含まれない場合の構文対象の列にNULL値が存在しないことが分かっている場合は、シンプルに次のような構文で合計を求められます。SELECT yourColumnName1+yourColumnName2+yourColumnName3+.......+N as anyV

  3. MySQLで文字列に数字が含まれているかどうかを確認する方法

    MySQLで文字列の中に数字が含まれているかどうかを調べたい場合は、REGEXP(正規表現)を使うのが最も簡単な方法です。カラムの値に対して REGEXP [0-9] という条件を指定することで、0〜9のいずれかの数字を1文字でも含むレコードだけを抽出できます。基本構文SELECT * FROM テーブル名 WHERE カラム名 REGEXP [0-9];サンプルテーブルを作成するそれでは、実際に動きを確認してみましょう。まずはテスト用のテーブルを作成します。mysql> create table StringContainsNumber -> ( -> Id

  4. 【MySQL】INFORMATION_SCHEMAとORDER BYを使ってカラム名をアルファベット順に取得する方法

    MySQLでテーブルのカラム名をアルファベット順に取得したい場合は、INFORMATION_SCHEMA.COLUMNS に対して ORDER BY 句を使用します。データベースのメタ情報を管理する INFORMATION_SCHEMA を活用することで、実際にSELECT文でデータを取り出すことなく、カラム構成だけを簡単に確認できます。基本の構文カラム名をアルファベット順(昇順)で取得するための基本構文は以下の通りです。SELECT anyReferenceName.COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS anyReferenceName WH

  5. MySQLクエリで連番(行番号)を生成する方法

    MySQLのクエリで取得した結果セットに連番(行番号)を付与したい場合、ユーザー定義変数を活用するのが一般的な手法です。本記事では、テーブル作成から実際のクエリ実行まで、サンプルコードとともに手順をわかりやすく解説します。 連番を生成するための基本構文 MySQLクエリで連番を生成するには、以下の構文を使用します。 SELECT @変数名 := @変数名 + 1 AS 連番の別名, カラム名1, カラム名2, カラム名3, ...N FROM テーブル名, (SELECT @変数名 := 0) AS 変数初期化用別名; ポイントは、クロス結合したサブクエリ (SE

  6. 【MySQL】TRIM()関数で10進数(DECIMAL)の末尾のゼロを削除する方法

    MySQLでは、TRIM()関数を使うことで、DECIMAL型(10進数)の値から末尾の不要なゼロを簡単に取り除くことができます。この記事では、具体的な構文と実行例をもとに、その手順をわかりやすく解説します。 末尾のゼロを削除する基本構文 末尾のゼロを削除するには、次のような構文を使用します。 SELECT TRIM(カラム名)+0 FROM テーブル名; ポイントは、TRIM()の結果に+0を加えているところです。TRIM()単体では値が文字列として扱われてしまうため、+0を加算して数値へ変換することで、末尾のゼロが自動的に削除されます。 実際に試してみよう 1. テーブルを作成す

  7. MySQLでOR演算子を使って2つのLIKE条件を組み合わせる方法

    MySQLでORを使って複数のLIKE条件を指定するMySQLでは、OR演算子を利用することで、2つ以上のLIKE条件を1つのクエリ内で組み合わせることができます。さらに、他の条件とANDで連結すれば、より柔軟な絞り込み検索が可能になります。基本構文2つのLIKEステートメントをORで結合するには、以下のような構文を使用します。SELECT * FROM yourTableName WHERE (yourColumnName LIKE %yourValue1% OR yourColumnName LIKE %yourValue2%) AND yourColumnName = yourValue

  8. MySQLテーブルのストレージエンジンを確認・変更する方法(InnoDB→MyISAMへの切り替え手順)

    MySQLテーブルのストレージエンジンを確認する まず、対象のテーブルがどのストレージエンジン(InnoDBまたはMyISAM)を使用しているのかを確認します。確認には、information_schema.tables の ENGINE カラムを利用するのが最も手軽です。 基本の構文は以下のとおりです。 SELECT ENGINE FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA = yourDatabaseName AND TABLE_NAME = yourTableName; サンプルテーブルを作成する ここでは例として、「Stud

  9. MySQLでNULL・空文字・空白を除外して有効な列の値だけを取得する方法

    MySQLで空でない列の値を取得する基本構文 MySQLでデータを扱っていると、NULL値だけでなく、空文字()や半角スペースのみが入ったレコードまで除外して、「実際に意味のある値」だけを取得したいケースによく出会います。 そんなときは IS NOT NULL 条件と TRIM() 関数を組み合わせるのが効果的です。基本の構文は以下のとおりです。 SELECT * FROM yourTableName WHERE yourColumnName IS NOT NULL AND TRIM(yourColumnName) <> ; IS NOT NULL だけでは空文字やスペースのみの

  10. MySQLでテーブルの一意制約(UNIQUE制約)を確認する方法をわかりやすく解説

    MySQLでは、information_schema.TABLE_CONSTRAINTSテーブルを参照することで、特定のテーブルに設定されている一意制約(UNIQUE制約)の名前を簡単に確認できます。 一意制約を表示するための基本構文 一意制約の名前を取得するには、以下のSQLを実行します。 SELECT DISTINCT CONSTRAINT_NAME FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS WHERE TABLE_NAME = yourTableName AND CONSTRAINT_TYPE = UNIQUE; このクエリでは、CONST

  11. MySQLでユーザーにビューの表示権限のみを付与する方法

    MySQLでユーザーに対して、特定のビューの表示(参照)権限のみを付与したい場合は、GRANT SELECT文を使用します。本記事では、ビューの一覧確認からユーザーへの権限付与まで、具体的な手順を解説します。ビューに権限を付与する基本構文ユーザーにMySQLビューの表示権限のみを付与するには、以下の構文を使用します。GRANT SELECT ON yourDatabaseName.yourViewName TO yourUserName@yourLocalHost;手順1:データベース内のビュー一覧を確認するまず、対象データベースに存在するすべてのビュー名を表示する必要があります。その構文は以

  12. MySQLで「TYPE=InnoDB」を指定するとエラーになる?正しいストレージエンジンの指定方法

    MySQLでテーブルを作成する際に「TYPE = InnoDB」と指定すると、構文エラーが発生します。これは、TYPE 構文が MySQL 5.1 で廃止(非推奨)になったためです。代わりに「ENGINE = InnoDB」を使用してください。 MySQLのバージョン確認方法 本記事の動作確認には MySQL 8.0.12 を使用しています。まずは、使用中の MySQL のバージョンを確認しておきましょう。バージョンは以下のクエリで確認できます。 mysql> select version(); 実行結果: +-----------+ | version() | +-----------

  13. MySQLでEmployeeテーブルの最高給与と2番目に高い給与を取得する方法

    MySQLでは、LIMIT句とOFFSET句を組み合わせることで、Employeeテーブルから最高給与と2番目に高い給与を簡単に取得できます。この記事では、具体的な手順をサンプルコードとともに解説します。 基本構文 給与カラムを降順に並べ替え、上位2件を取得する構文は以下の通りです。 SELECT yourColumnName1, yourColumnName2, ....N FROM yourTableName ORDER BY yourColumnName DESC LIMIT 2 OFFSET 0; ORDER BY 〜 DESCで降順ソートを行い、LIMIT 2で上位2件、OFFSE

  14. MySQLのクエリ結果をCSV形式で画面に表示する方法|CONCAT()関数の使い方を解説

    MySQLのクエリ結果をCSV(カンマ区切り値)形式でファイルに出力せず、そのまま画面に表示したい場合には、CONCAT()関数が便利です。各カラムの値をカンマで連結することで、1つの文字列としてCSV形式の出力を得られます。基本構文CSV形式で出力するための基本的な構文は以下のとおりです。mysql> SELECT CONCAT(StudentId,,,StudentName,,,StudentAge) AS CSVFormat FROM CSVFormatOutputs;それでは、実際にテーブルを作成しながら動作を確認していきましょう。サンプルテーブルの作成まずは動作確認用のテーブル

  15. サブクエリを使ってMySQLのEmployeeテーブルから最大給与と2番目に大きい給与を取得する方法

    サブクエリ(副問い合わせ)を利用すると、Employeeテーブルから最大給与と2番目に大きい給与を簡単に取得できます。この記事では、テーブルの作成からデータの挿入、サブクエリによる上位2つの給与の抽出まで、手順を追ってわかりやすく解説します。 1. テーブルを作成する まず、従業員情報を格納するためのテーブルを作成します。テーブル作成用のクエリは以下のとおりです。 ); Query OK, 0 rows affected (0.88 sec) 2. レコードを挿入する 次に、INSERTコマンドを使ってテーブルに複数のレコードを挿入します。 mysql> insert into Emp

  16. MySQLのORDER BYでLIKE条件を使って並び替える方法

    MySQLでは、ORDER BY句の中でCASE式とLIKE演算子を組み合わせることで、特定のパターンに一致する行を優先的に並び替えることができます。通常のORDER BYはカラムの値を基準にソートしますが、この手法を使えば「文字列の一部が一致するかどうか」という柔軟な条件でのソートが可能になります。本記事では、具体的な構文と実行例を通じて、その使い方をわかりやすく解説します。 基本構文 LIKE条件に基づいて並び替えるには、ORDER BY句の中でCASE式を使用します。基本構文は以下の通りです。 SELECT *FROM yourTableName    &n

  17. MySQLで出現回数をカウントする方法|COUNT()とGROUP BYの使い方

    テーブル内の各値の出現回数(発生件数)を調べたい場合は、集計関数であるCOUNT()とGROUP BY句を組み合わせて使用します。この組み合わせにより、特定のカラムに含まれる値ごとに、その値が何回登場したかを一括して集計できます。基本構文出現回数をカウントするための基本的なSQL構文は以下の通りです。SELECT yourColumnName, COUNT(*) AS anyVariableName FROM yourTableName GROUP BY yourColumnName;GROUP BYで指定したカラムの値ごとに行がグループ化され、COUNT(*)がそれぞれのグループ内の行数、つ

  18. MySQLのCONCAT_WS()関数でクエリ結果をCSV形式に出力する方法

    CONCAT_WS()関数とはMySQLでクエリ結果をCSV(カンマ区切り値)形式で出力したい場合は、CONCAT_WS()関数を使用します。この関数は、指定した区切り文字で複数のカラムの値を連結し、1つの文字列として返してくれます。基本構文構文は以下の通りです。SELECT CONCAT_WS(,, カラム名1, カラム名2, カラム名3, ....N) AS 任意の別名 FROM テーブル名;第一引数には区切り文字(ここではカンマ「,」)を指定し、第二引数以降に連結したいカラムを順番に列挙します。実際に試してみよう1. テーブルの作成まず、動作を確認するためのサンプルテーブルを作成します。

  19. MySQLのORDER BYで特定の文字列順に並べ替える方法(FIELD関数の使い方)

    MySQLでは、FIELD() 関数を ORDER BY 句と組み合わせることで、レコードを任意の文字列の順序で並べ替えることができます。通常の ORDER BY はアルファベット順や数値順にソートしますが、FIELD() を使えば「自分が指定した順番」どおりに結果を並べられます。 FIELD() 関数の基本構文 構文は以下のとおりです。 SELECT * FROM yourTableName ORDER BY FIELD(yourColumnName,yourValue1,yourValue2,yourValue3,....N); FIELD() 関数は、第1引数のカラム値が、以降に指定し

  20. 【MySQL】日付の年だけを一括変更する方法をわかりやすく解説

    MySQLで日付(DATE型)データの「年」の部分だけを変更したい場合は、DATE_FORMAT()関数とUPDATE文を組み合わせることで簡単に実現できます。月や日はそのまま維持しながら、年のみを一括で更新できる便利なテクニックです。本記事では、実際のサンプルコードとともに手順を詳しく解説します。 基本構文 日付の年を変更するための基本的な構文は以下の通りです。 UPDATE yourTableName SET yourDateColumnName = DATE_FORMAT(yourDateColumnName ,yourYearValue-%m-%d); DATE_FORMAT()の第

Total 4564 -コンピューター  FirstPage PreviousPage NextPage LastPage CurrentPage:148/229  20-コンピューター/Page Goto:1 142 143 144 145 146 147 148 149 150 151 152 153 154