【SQL】カラムの文字列が部分的に一致するレコードを検索

【SQL】カラムの文字列が部分的に一致するレコードを検索

SN

11/20 15:46



サンプルテーブル




Column1
Column2




ABCDEFG
This


ACCDEEE
column


ABCDEFH
will


ABCXYXZ
be


ZBCDEFZ
left




テーブル内の Column1 にある文字列の部分的に一致するレコードを抽出

例えば、

・先頭から ABCDEF まで一致するレコード

・2文字目から BCDEまで一致するレコード

の事です


先頭からABCDEFまで一致 SQL


substring.sql
SELECT
s.*
FROM
sample s
WHERE
SUBSTRING(s.Column1,1,6) IN (
SELECT
SUBSTRING(s2.Column1,1,6) c1
FROM
sample s2
GROUP BY
SUBSTRING(s2.Column1,1,6)
HAVING
COUNT(c1) > 1
);



一度 GROUP BY で一致するレコードを抽出してからデータを検索




Column1
Column2




ABCDEFG
This


ABCDEFH
will





2文字目から BCDEまで一致 SQL


substring2.sql
SELECT
s.*
FROM
sample s
WHERE
SUBSTRING(s.Column1,2,4) IN (
SELECT
SUBSTRING(s2.Column1,2,4) c1
FROM
sample s2
GROUP BY
SUBSTRING(s2.Column1,2,4)
HAVING
COUNT(c1) > 1
);






Column1
Column2




ABCDEFG
This


ABCDEFH
will


ZBCDEFZ
left




SQLも奥が深いですね・・・

PR:デジカフェ

Qiita - MySQLタグが付けられた新着投稿

MAMPを使ってのCakePHP環境構築備忘録

SN

12/17 15:13



前提として

・MAMP導入済み

・もしかすると違うかも(素人なんで)


第一ステップ

・PHPバージョン変更

参考

MAMPとComposerを使ったCakePHP3.xのローカル開発環境の構築

メモ:初心者とし...

MySQLが起動できない

MySQLが起動できない

SN

12/17 13:56



MySQLでエラーになるシーン

mysqlサーバーに入るときや、

$ mysql -u root


railsでmigrationを実行するとき。

$ bundle exec rake db:migrate


上記のようなコマンドを実行すると、正常に起動しない場合...

トランザクション処理を解説「初心者向け」

SN

12/17 13:29

これはユアマイスター Advent Calendar 2018の17日目の記事です。

サンプルコードを元にトランザクション処理を解説します。


サンプルコード


sample
<?php

namespace App\Controller;

use App\Controll...

MySQLでGISデータを扱う

SN

12/17 07:01

こんにちは。@onunuです。本記事はMySQL casual AdventCalendar 17日目の記事です。


本記事ではMySQL8で大幅に強化されたGISデータ周りのtipsについて触れたいと思います。ある程度尽くされた話題ではあ...

CloudSQLのIO性能を観察する(検証編)

SN

12/16 19:23



概要

前回の続き。ディスクサイズが50GB, 100GB, 200GB, 400GB, 600GBのパターンで、それぞれ負荷をかけてIO性能を観察する。

負荷のかけ方は、MySQLのLOAD DATA LOCAL INFILEで巨大なデータを読み込ませる。...

CloudSQLのIO性能を観察する(準備編)

SN

12/16 02:05



概要

CloudSQLのIO性能を観察する。CloudSQLはGCPで提供されているRDBMSのマネジメントサービス。(AWSで言うところのRDS)

CloudSQLのディスクのスループットとIOPSは、ディスクサイズで決定されるため、こ...

jQueryとPHPを使って会員登録用のフォームを作ってみた

jQueryとPHPを使って会員登録用のフォームを作ってみた

SN

12/15 21:35



概要

会員登録の際によく使われるフォームを作成してみました。具体的には、jQueryとPHPを使って、データベースにすでに登録されている場合はエラーを表示し、すべての項目が正しく入力されている場合データベ...

N+1問題をLaravelのEagerローディングで解決!

N+1問題をLaravelのEagerローディングで解決!

SN

12/15 17:42



少しだけ自己紹介

G's ACADEMYアドベントカレンダー2018 15日目!

LAB5の浅海です。現在Laravelをメインにさわっています。

ララボという小中高生向け家庭教師マッチングプラットフォームを運営してい...

[Laravel] DB更新を行うときはトランザクションに気をつけよう

SN

12/15 10:10

Laravel アドベントカレンダー2018 15日目です。

業務でLaravel書いていて、トランザクション管理されていないコード見たときに、

「あれ? Laracvelってトランザクションのコード書かないときどういう動作...

Fluentd + MySQL でログ保存 & 検索システムを考えてみた話

SN

12/15 07:02

食べログ DevOps チームの @e-ronny と申します。

この記事は Advent Calendar の15日目の投稿です。


概要

以下のようなシステムの設計を検討する機会があったので、その過程をまとめてみます。


アプリ...

CentOSにMetabaseを構築する方法

SN

12/15 03:02



構築


単純にやるならめっちゃ簡単。jar取ってきて配置して実行するだけ。

今回は、メタデータの管理DBをデフォルトのH2からMySQLに変更する。

そしてサービスとして運用する。



AP


インストール ...

使用するデータベースを変更する時

SN

12/14 18:05

自分用メモ。

rails newで新しいアプリケーションを生成したときにデフォルトのデータベースを変更するのを忘れていたため、後から修正。

Gemfileのsqliteをmysqlに書き換えるだけ

以上。

DOMAで複数列のIN句(列:条件 = n:n)を実装する。

SN

12/14 17:18



複数列のIN句???

こんなの

SELECT * FROM TEST_TBL
WHERE
(FIRST_NAME, LAST_NAME) IN (
('山田', '太郎'),
('鈴木', '次郎')
)



DOMAで実装

普通にやるとダメなのでfor文で頑...

【MySQL】作成した後のテーブルに主キーの追加

SN

12/14 15:54



何故するのか

主キーを付け忘れた

後々考えたら主キーが必要だった など


自分がこれを行うに至った状況

既に存在するテーブルについてのバックアップを2週間ほど保存しておいて

cronで物理削除を...

【MySQL】Keyのところに出る「MUL」の付け方

SN

12/14 14:34



なぜここに書くのか

前回のMySQL書き込みの際にPRIMARY KEYを後から付ける方法を書きましたが、別テーブルのユニークカラムのところに「MUL」と書いてあり、これがわからなかったため

https://qiita.com/q...

mysqlでダンプファイルからテーブルとcsvデータを読み込む方法

SN

12/14 14:25



はじめに

すでに出来上がってるデータベースに後から追加したいテーブルがある時が発生したので手順を書いていきたいと思います。


手順


ダンプファイルの読み込み

mysql -u username -p dbname < dump...

MySQL環境構築

SN

12/14 07:44



DockerでMySQL

docker-composeに挫折した。。。のでdocker runコマンドで。


MySQL5.7のインストールと起動

Docker Hub - MySQL

https://hub.docker.com/_/mysql/

docker run --name mysql57 -v /Users...

Raspberry PiをSQLサーバーにして、Python3からMySQLのデータを検索して表示させるまで

SN

12/13 23:17



はじめに

備忘録として書いてみます。


必要なパッケージを導入する


Apache2のインストール

$ sudo apt install apache2


IPアドレスを確認

$ ifconfig


IPアドレスにアクセスできればインストールでき...

JSPでデータベースを利用する(Eclipse)

SN

12/13 22:39



概要

JSPの学習をしていて、DBに接続しようとしたときに発生した例外やエラーへの対処法をまとめてみました。また、学習するにあたり、なかなかいいサンプルコードを見つけることができなかったので、最後には...

【MySQL】ソートをした際のNULLの位置について

SN

12/13 17:41



MySQLでソートをした際のNULLの位置について


table




id
name




1
aaa


2
NULL


3
bbb





昇順(NULLが上)

SELECT * FROM table ORDER BY name ASC;


実行結果:




id
name




2
NULL


1
aaa
...

PR:Amazonプライムビデオ

Qiita

Qiita - 人気の投稿

Qiita - AWSタグが付けられた新着投稿

Qiita - Gitタグが付けられた新着投稿

Qiita - Linuxタグが付けられた新着投稿

Qiita - MySQLタグが付けられた新着投稿

Qiita - nginxタグが付けられた新着投稿

Qiita - Dockerタグが付けられた新着投稿

Qiita - Pythonタグが付けられた新着投稿

Qiita - Rubyタグが付けられた新着投稿

Qiita - PHPタグが付けられた新着投稿

Qiita - Javaタグが付けられた新着投稿

Qiita - JavaScriptタグが付けられた新着投稿