情弱エンジニアのなかのblog

一人前のエンジニアになる為のブログです

MySQL

MySQLのREPLACEについて

MySQLでREPLACEの使い方等について覚えたので記載いたします。 REPLACEはレコードに登録してある文字列や数値を置換したい時に使います。 書き方は以下のようになります。 UPDATE テーブル名 SET カラム名=REPLACE(カラム名, '置換前', '置換後') WHERE id=X…

SQL サブクエリの扱い方について復習

SQLを書いていてサブクエリを使うのですが基本的な使い方のおさらいをしておきたいと思ったので記載いたします。 今回はデータうんぬんではなく、サブクエリを使う際の注意になります。 まず以下のようなサブクエリの使い方をしているとします SELECT custom…

SQL データの集計に関して

売上の計算をするSQLを制作していまして、特定条件で絞り込んだ顧客の初回購入から〇ヵ月間の売上を取得する という処理を制作したので、手順等を記載いたします。 まず前提として以下のようなテーブルがあるとします。 customersテーブル 顧客名 登録日(顧…

PHPでDBのデータを扱う

PHPのアプリケーションを制作していてDBを扱う方法を学んだので記載いたします。 今回はDBの挿入と更新と削除を行う方法に絞って説明いたします。 1.挿入 挿入の処理は以下になります $stmt = $db->prepare("INSERT INTO テーブル名 (name, value) VALUES (:…

MySQLで大きい数値の表示とGROUP BYで複数指定の方法

MySQLを使っていて覚えた技術を記載いたします。 1.表示する数値を3桁でカンマ区切りにする 総売上など、ある程度大きい数値を出力するSQLを作った際に、そのまま表示すると見にくくなります。 SELECT total_sales as '総売上' 総売上 10000000 表示する数値…

SQL WHERE 1の意味について

SQL文でときどき SELECT fuga FROM hoges WHERE 1 といった書き方を見かけたのですがどういった意味なのか分からなかったので、調べたので記載いたします。 まず上記のSQL文は SELECT fuga FROM hoges と結果は変わりません。 [where 1]に関してですが、MySQ…

SQL小数点の表示とtimestamp

SQLを扱っていて、小数点の表示とtimestampを扱ったので、使い方等記載いたします。 1.小数点の指定 データの平均を出す計算をするときなどで、小数第何位まで表示するか指定したいときがあると思うのですが そういったときに使えるのが[DATE_FORMAT]です。 …

MySQL HAVING句とORDER BY句についてまとめてみました!

条件指定と並び替え HAVING句とORDER BY句の使い方等の説明を書いていきます。 HAVING句 まずSQL文にはGROUP BY句というものがあります、簡単に説明しますとGROUP BY句とはあるフィールドを選択してそのフィールドごとに出力するという意味があります。 GROU…

DBの設計に関して

リレーショナルデータベースについて 制作しているアプリにDBを実装していきたいのですが、その前にDBの要件定義をしないといけないので、 そのやり方を書いていきます。 1.リレーショナルデータベースとは 2.外部キーとは 1.リレーショナルデータベースとは…

内部結合と外部結合の違いについて

INNER JOIN と LEFT OUTER JOIN この間MySQLのJOINについての記事を書きましたが、内部結合と外部結合についてよく分かっていなかったので今回まとめてみようと思います 1.前提条件 2.内部結合とは 3.外部結合とは 1.前提条件 まず説明を始める前に二つのテ…

MySQLの結合について

テーブルとテーブルを結合するにはJOINが必要! 今回はMySQLのJOINを覚えたので使い方を書いていきます。 1.なぜ結合するのか 2.前提条件 3.実際の使い方 1.なぜ結合するのか まずなぜ結合が必要かといいますと、DBには複数のテーブルが存在していまして、そ…

DBについて理解しよう!!

難しいことはドットインストールで覚えよう 今回はPHPとMySQLを組み合わせた使い方を学習したのでつまずいた点などアップします! ちなみにドットインストールの「PHPデータベース入門」を学びました 1.データの追加をしたいときとは? 2.検索の仕方とは? 3…