MySQLでテキストフィールドの先頭40文字を取得する方法|LEFT関数の使い方
MySQLでテキストフィールドから先頭40文字だけを取り出したい場合、LEFT()関数を使用すると簡単に実現できます。この関数は、指定した文字列の左側(先頭)から指定した文字数分だけを抜き出すものです。
LEFT()関数の基本構文
SELECT LEFT(カラム名, 40) AS 任意の別名 FROM テーブル名;
それでは、実際にサンプルを通して動作を確認していきましょう。
サンプルテーブルの作成
まずは、テキスト型カラムを持つテーブルを作成します。
mysql> CREATE TABLE retrieveFirst40Characters
-> (
-> AllWords text
-> );
Query OK, 0 rows affected (0.59 sec)
データの挿入
次に、INSERTコマンドを使ってレコードを登録します。ここでは40文字以上ある長めの文章を格納してみます。
mysql> INSERT INTO retrieveFirst40Characters VALUES('This is a query demo to extract a forty characters from a text
Query OK, 1 row affected (0.32 sec)登録データの確認
SELECT文ですべてのレコードを表示して、正しく登録されているか確認しましょう。
mysql> SELECT * FROM retrieveFirst40Characters;
実行結果は以下のとおりです。
+------------------------------------------------------------------------------------------------------------------------+
| AllWords |
+------------------------------------------------------------------------------------------------------------------------+
| This is a demo text displayed in a table for our example |
+------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)
先頭40文字を抽出するクエリ
いよいよLEFT()関数を使って、テキストフィールドの先頭40文字を取得します。
mysql> SELECT LEFT(AllWords, 40) AS Retrieve40Characters FROM retrieveFirst40Characters;
実行結果を見ると、元のテキストからちょうど40文字分だけが切り出されて表示されていることがわかります。
+------------------------------------------+
| Retrieve40Characters |
+------------------------------------------+
| This is a demo text displayed in a table |
+------------------------------------------+
1 row in set (0.03 sec)
まとめ
LEFT()関数を使えば、MySQLのテキストフィールドから任意の文字数分だけ先頭を簡単に抽出できます。第2引数の数値を変更すれば、20文字や100文字など、必要な長さに自由に調整可能です。記事の一覧表示やプレビュー文の生成など、文字数を制限したい場面でぜひ活用してください。
-
MySQLでデータベース内のテーブル名一覧を取得する方法
MySQLでデータベースに存在するテーブル名の一覧を取得したい場合は、SHOW TABLESステートメントを使用します。SQLクライアントやコマンドラインから手軽に実行でき、指定したデータベース内の全テーブルを簡単に確認できます。基本構文テーブル名を取得するための基本構文は以下のとおりです。show tables from yourDatabaseName;yourDatabaseName の部分に、対象となるデータベース名を指定してください。実行例それでは、サンプルデータベース「hb_student_tracker」に対して実際にクエリを実行し、テーブル名を取得してみましょう。mysql&g
-
MySQLでTIMESTAMP型のカラムを持つテーブルを作成する方法
MySQLでは、TIMESTAMPキーワードを使用することで、日時を自動的に記録するカラムを持つテーブルを簡単に作成できます。TIMESTAMP型に「DEFAULT CURRENT_TIMESTAMP」を指定すると、レコード挿入時の現在日時が自動的に設定されるため、作成日時や更新日時の管理に非常に便利です。1. TIMESTAMPカラムを持つテーブルを作成するまず、CREATE TABLE文でTIMESTAMP型のカラムを含むテーブルを作成します。mysql> create table demo50 -> ( -> id int not null auto_increment