MySQL

 Computer >> コンピューター >  >> プログラミング >> MySQL
  1. MySQLで結果をグループ化して一覧表示する方法

    GROUP BYとORDER BYを使った集計クエリの基本MySQLでデータを特定のカラムごとにグループ化し、その件数を一覧形式で表示したい場合は、GROUP BY句とORDER BY句を組み合わせて使用します。基本的な構文は以下の通りです。SELECT yourColumnName, COUNT(*) AS anyAliasNameFROM yourTableNameGROUP BY yourColumnNameORDER BY yourColumnName;COUNT(*)で各グループのレコード数を数え、別名(エイリアス)を付けることで、結果を見やすく表示できます。サンプルテーブルの作成ま

  2. MySQLで複数テーブルの結果をマージする方法|JOINを使った結合手順を解説

    MySQLで2つ以上のテーブルに分かれたデータを1つの結果としてまとめたい場合、JOIN(結合)を使うのが最もシンプルで効果的な方法です。この記事では、実際にテーブルを作成しながら、JOINによる結果のマージ手順をわかりやすく解説します。マージに使用するJOINの基本構文結果をマージするには、以下のような構文でシンプルなJOINを使用します。SELECT aliasName1.yourColumnName1, aliasName1.yourColumnName2, ... aliasName2.yourColumnName1 FROM yourTableName1 aliasN

  3. JavaでMySQLテーブルのデータをリスト(ArrayList)として取得する方法

    JavaでMySQLテーブルからデータを取得してリスト形式に格納したい場合、ArrayListの概念を活用するのが効果的です。特に、ArrayList<ArrayList<データ型>>のように入れ子構造のArrayListを使うことで、テーブルの各行を内側のリスト、テーブル全体を外側のリストとして管理できます。基本的な構文ArrayList<ArrayList<yourDataType>> anyVariableName = new ArrayList<ArrayList<yourDataType>>();サンプルテーブル

  4. MySQLでファイルパスを格納したテーブルから部分文字列(サブストリング)を取得する方法

    MySQLのsubstr()関数で部分文字列を取得する基本構文MySQLで文字列の一部(部分文字列)を取得するには、substr()関数を使用します。基本的な構文は以下のとおりです。select substr(カラム名, 開始位置, 終了位置) from テーブル名 limit 値;select substr(カラム名, 開始位置 + 終了位置) from テーブル名 limit 値;第1引数に対象のカラム、第2引数に抽出を開始する位置、第3引数に終了位置を指定します。終了位置を省略した場合は、開始位置から文字列の末尾までがすべて抽出されます。サンプルテーブルの作成まず、ファイルパスを格納する

  5. JavaとMySQLで現在の日付に月数を追加する方法(INTERVAL句の使い方)

    JavaとMySQLを組み合わせて現在の日付に月数を追加するには、INTERVAL句を使用します。以下がその基本構文です。 String query; query = insert into テーブル名 values(curdate()+interval 追加する月数 month); 現在の日付を確認する まず、curdate()関数を使って現在の日付を確認してみましょう。 mysql> select curdate(); +------------+ | curdate() | +------------+ | 2020-10-25 | +------------+ 1 row in

  6. MySQLでテーブルを更新し、新しい列に名前のイニシャルを表示する方法

    MySQLでは、LEFT()関数とSUBSTRING_INDEX()関数を組み合わせることで、氏名からイニシャル(頭文字)だけを取り出すことができます。この記事では、実際にテーブルを作成し、既存のデータからイニシャルを生成して新しい列に格納する手順を解説します。 1. テーブルの作成 まず、氏名を保存する「full_name」列と、イニシャルを格納する「short_name」列を持つテーブルを作成しましょう。 mysql> create table demo13 -> ( -> full_name varchar(100), -> short_name varchar

  7. PL/SQLで距離をkmからメートル・センチメートルに変換する方法

    PL/SQLは、SQLのデータ操作機能と手続き型言語の処理を組み合わせたSQLの拡張言語です。本記事では、PL/SQLを使ってキロメートル(km)単位の距離をメートル(m)およびセンチメートル(cm)に変換する方法を解説します。課題としては、キロメートル単位で与えられた距離の値を、メートルとセンチメートルに換算することが求められます。変換ルール距離の単位変換は、以下の基本ルールに基づいて行います。1km = 1000メートル1km = 100000センチメートルこの変換ルールをもとに、PL/SQLのロジックで距離を変換していきます。処理の例入力: kilometer = 10 出力: mete

  8. PL/SQLで文字列内の文字数と単語数をカウントする方法

    任意の長さの文字列が与えられたとき、PL/SQLを使ってその文字列に含まれる文字数と単語数を求める方法を解説します。PL/SQLとは、SQLにプログラミング言語の手続き的な機能を組み合わせた拡張言語です。1990年代前半にOracle Corporation(オラクル社)によって、SQLの機能を強化する目的で開発されました。PL/SQLは、SQL本体やJavaとともに、Oracle Databaseに組み込まれている3つの主要プログラミング言語のひとつです。PL/SQLブロックでは、プログラム内で使用する変数を宣言するための「DECLARE」ブロックと、実際の処理ロジックを記述するための「BE

  9. SQLのビュー(VIEW)とマテリアライズドビューの違いを徹底比較

    データベースの主要な構成要素はテーブルですが、データへのアクセスを柔軟にカスタマイズするために「ビュー(View)」という概念が存在します。ビューを活用することで、特定のユーザーが必要なデータだけにアクセスできるよう制限することが可能になります。本記事では、ビューとマテリアライズドビュー(Materialized View)それぞれの特徴をもとに、両者の重要な違いを6つの観点から詳しく解説します。ビューとマテリアライズドビューの比較表番号項目ビューマテリアライズドビュー1定義SELECTクエリによって作成されるテーブルの論理的な仮想コピーです。結果はディスク上に保存されず、データが必要になるた

  10. SQLにおける単純ビューと複雑ビューの違いを徹底解説

    ビュー(View)とは単純ビューと複雑ビューの違いを理解する前に、まず「ビュー」とは何かを確認しておきましょう。ビューとは、1つ以上のテーブルをもとに作成される論理的な仮想テーブルのことです。複数の異なるテーブルから必要な列を一度に取得したい場合などに主に利用されます。SQLでは、ビューを構成するテーブルの数や内容に応じて、「単純ビュー(Simple View)」と「複雑ビュー(Complex View)」に分類することができます。単純ビューと複雑ビューの主な違い以下の表に、単純ビューと複雑ビューの重要な違いをまとめました。No.項目単純ビュー複雑ビュー1定義1つのテーブルのみを使って作成され

  11. PL/SQLで数値の先頭と末尾の桁の合計を求める方法

    問題の概要この記事では、ある数値 n が与えられたとき、その先頭(最初)の桁と末尾(最後)の桁の合計を求めるプログラムを PL/SQL で作成します。PL/SQL とはPL/SQL は、SQL に手続き型プログラミング言語の機能(変数宣言・条件分岐・ループなど)を組み合わせた Oracle 社の拡張言語です。単純なクエリ実行にとどまらず、ロジックを持ったデータベース処理を記述できます。具体例で理解しよう入力: n = 31415出力: 8解説: 先頭の桁 = 3、末尾の桁 = 5 → 合計 = 8解決のアプローチこの問題を解くには、数値 n から先頭の桁と末尾の桁をそれぞれ取り出し、その合計を

  12. PHPでSQLデータベースのタイムスタンプを文字列に変換する方法

    SQLデータベースから取得したタイムスタンプを日付文字列に変換するには、PHPのDateTimeクラスとsetTimestamp()メソッドを利用します。ここでは、ミリ秒単位のタイムスタンプを「年-月-日 時:分:秒」形式の文字列に変換する具体的な手順を、サンプルコード付きで解説します。 変換前の入力(タイムスタンプ) 今回の例では、次のようなミリ秒単位のタイムスタンプが入力であると仮定します。 $SQLTimestamp = 1600320600000; 期待される出力(日付文字列) 最終的に取得したい出力は、以下のような読みやすい日付文字列です。 2020-09-17 05:30:0

  13. MySQL Dockerコンテナの作成と実行方法を徹底解説

    はじめにDockerコンテナ化の最も重要な特徴のひとつは、必要な依存関係やパッケージがすべて揃った、境界のある実行環境をアプリケーション向けに構築できる点です。多くのアプリケーションではデータを保存するためにバックエンドデータベースが必要になります。OracleはMySQLをコンテナ内で動作させるためのDockerイメージを公式提供しており、データベースアプリケーションのテスト環境として最適な選択肢となっています。Dockerを利用すれば、MySQLのバイナリと依存関係を含むイメージをダウンロードし、仮想ファイルシステムを構築できます。さらに、--rmフラグを付けてコンテナを起動すると、停止時

  14. PL/SQLで数値内の奇数の桁と偶数の桁をカウントする方法

    本記事では、正の整数が与えられたとき、PL/SQLを使ってその数値に含まれる奇数の桁と偶数の桁の個数をそれぞれ求める方法を解説します。PL/SQLとは、SQLにプログラミング言語の手続き的な機能を組み合わせた言語です。Oracle社によって1990年代前半に開発され、SQLの機能を拡張することを目的としています。PL/SQLは、SQL本体およびJavaと並んで、Oracle Databaseに組み込まれている3つの主要なプログラミング言語のひとつです。実行例入力: int number = 23146579出力:count of odd digits in a number are : 5 c

  15. PandasでSQLクエリ風にデータのサブセットを抽出する2つの方法

    はじめにこの記事では、Pandasを使ってSQLスタイルのフィルタリングでデータ分析を行う方法を解説します。企業のデータの多くはデータベースに格納されており、その取得や操作にはSQLが欠かせません。たとえばOracle、IBM、Microsoftといった各社は、独自のSQL実装を持つデータベース製品を提供しています。データは常にCSVファイルとして保存されているとは限らないため、データサイエンティストはキャリアの中で必ず一度はSQLと向き合うことになります。筆者自身も、会社のデータの大半がOracleに保存されているため、Oracleをよく利用しています。シナリオ:条件に合う映画を抽出する映画

  16. MySQLストアドプロシージャ内で動的SQLクエリを実装する方法

    ストアドプロシージャ内で動的SQLクエリを実行するには、PREPARE STATEMENT(プリペアドステートメント)の仕組みを利用します。まずはサンプル用のテーブルを作成しましょう。1. テーブルの作成mysql> create table DemoTable2033 -> ( -> Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, -> Name varchar(20) -> ); Query OK, 0 rows affected (1.61 sec)2. レコードの挿入INSERTコマン

  17. MySQLストアドプロシージャでカラムの値を変数に格納する方法

    MySQLのストアドプロシージャ内で変数を宣言するには、DECLARE文を使用します。さらにSELECT ~ INTO構文を組み合わせることで、テーブルのカラム値を変数に格納することができます。ここでは、実際にサンプルテーブルを作成し、ストアドプロシージャ経由でカラムの値を変数に取得する手順を解説します。1. サンプルテーブルの作成まず、以下のようにテーブルを作成します。mysql> create table DemoTable2034-> (-> StudentId int NOT NULL AUTO_INCREMENT PRIMARY KEY,-> StudentN

  18. MySQLでTRUE/FALSEのレコードを0/1として表示する方法

    MySQLでTRUE/FALSEのレコードを0/1として表示する方法MySQLでは、カラムのデータ型をBOOLEANとして定義することで、TRUE/FALSEの値が自動的に0と1として表示されます。BOOLEAN型は内部的にはTINYINT(1)のエイリアスであり、TRUEは1、FALSEは0として扱われます。以下、具体的な手順を解説します。1. テーブルの作成まず、BOOLEAN型のカラムを含むテーブルを作成しましょう。mysql> create table DemoTable2035     -> (    

  19. MySQLで日付の妥当性を検証するカスタム関数の作成方法

    MySQLでは、標準機能だけでも STR_TO_DATE() や DATE() を組み合わせて日付の妥当性をある程度判定できますが、判定処理を何度も使い回したい場合には、カスタム関数(ストアドファンクション)としてまとめておくと便利です。ここでは、渡された文字列が有効な日付かどうかを判定し、結果を 1(有効)または 0(無効)で返す関数を作成する手順を解説します。1. 事前準備:log_bin_trust_function_creators の設定バイナリログが有効な環境でストアドファンクションを作成する場合、事前にシステム変数 log_bin_trust_function_creators

  20. MySQLで列の値から先頭の1文字を取り出し、別の列に挿入する方法

    はじめにMySQLである列(カラム)の値から先頭の1文字を取り出し、それを別の列に格納したい場合があります。このようなときに便利なのが LEFT() 関数です。LEFT() 関数は、文字列の左端から指定した文字数だけを抽出することができます。ここでは、実際にテーブルを作成しながら、その手順を順番に解説していきます。1. テーブルを作成するまず、サンプル用のテーブルを作成しましょう。ここでは「FirstLetter」(先頭文字を格納する列)と「Title」(元となる文字列の列)の2つの列を持つテーブルを定義します。mysql> create table DemoTable2036 

Total 4564 -コンピューター  FirstPage PreviousPage NextPage LastPage CurrentPage:13/229  20-コンピューター/Page Goto:1 7 8 9 10 11 12 13 14 15 16 17 18 19