mysqlにクエリを実行する方法

王林
リリース: 2023-05-12 12:51:08
オリジナル
1306 人が閲覧しました

MySQL は、Web サイトやエンタープライズ アプリケーションで広く使用されているオープン ソースのリレーショナル データベース管理システムです。 MySQL のインストールと使用に加えて、必要なスキルはデータベースのクエリです。クエリは非常に重要であり、必要なデータを検査、フィルタリング、取得できるようにするためです。この記事では、基本的なクエリ、高度なクエリ、接続クエリなど、MySQL データベースにクエリを実行する方法を紹介します。

1. 基本的なクエリ

  1. SELECT ステートメント

SELECT ステートメントは、データベース テーブルからデータを取得するために使用されます。どの列を取得するか、どのテーブルからデータを取得するかを指定します。構文は次のとおりです:

SELECT 列 1, 列 2, ... FROM テーブル名;

例:

SELECT 名前、年齢 FROM 学生;

上記のステートメントは、students テーブルから name 列と age 列のデータを取得します。

  1. WHERE ステートメント

WHERE ステートメントは、特定の行をフィルターし、条件を満たすデータのみを返すために使用されます。これは SELECT ステートメントの後にあり、構文は次のとおりです:

SELECT 列 1, 列 2, ... FROM テーブル名 WHERE 条件;

例:

SELECT 名, age FROM students WHERE age > 18;

上記のステートメントは、students テーブルから 18 歳以上の生徒の名前と年齢を取得します。

  1. ORDER BY ステートメント

ORDER BY ステートメントは、指定した列に従って取得したデータを並べ替えるために使用されます。データを昇順または降順に並べることができます。構文は次のとおりです:

SELECT 列 1, 列 2, ... FROM テーブル名 WHERE 条件 ORDER BY 列 1, 列 2, ... ASC|DESC;

例:

SELECT name , age FROM students WHERE age > 18 ORDER BY age DESC;

上記のステートメントは、students テーブルから 18 歳以上の生徒の名前と年齢を取得し、降順で並べ替えます。年。

  1. LIMIT ステートメント

LIMIT ステートメントは、取得する行数を制限するために使用されます。通常、レコードの最初の N 行を取得するか、レコードの最初の M 行をスキップするために、ORDER BY ステートメントとともに使用されます。構文は次のとおりです:

SELECT 列 1, 列 2, ... FROM テーブル名 WHERE 条件 ORDER BY 列 1, 列 2, ... ASC|DESC LIMIT N OFFSET M;

例:

SELECT name, age FROM students WHERE age > 18 ORDER BY age DESC LIMIT 10;

上記のステートメントは、students テーブルから 18 歳以上の生徒の名前と年齢を取得します。レコードの最初の 10 行を返します。

2. 高度なクエリ

  1. LIKE ステートメント

LIKE ステートメントは、特定のスタイルのデータをフィルターするために使用され、多くの場合、あいまい一致に使用されます。 WHERE ステートメントで使用できます。構文は次のとおりです:

SELECT column1, column2, ... FROM table_name WHERE column_name LIKE pattern;

WHERE 文はワイルドカードを含む文字列です。 % および _ ワイルドカードを使用して、任意の文字と 1 つの文字に一致させることができます。例:

SELECT name, age FROM students WHERE name LIKE '%zhang%';

上記のステートメントは取得します。 「zhang」を含む学生テーブルの学生レコードの名前。

  1. IN ステートメント

IN ステートメントは、列内の複数の値と一致するクエリに使用されます。 WHERE ステートメントで使用できます。構文は次のとおりです:

SELECT column1, column2, ... FROM table_name WHERE column_name IN (value1, value2, ...);

For例:

SELECT name, age FROM students WHERE age IN (18, 19, 20);

上記のステートメントは、年齢が 18、19、または 20 歳の生徒レコードを学生のテーブル。

  1. NOT ステートメント

NOT ステートメントは、条件を満たさない行をフィルター処理するために WHERE ステートメントで使用されます。構文は次のとおりです:

SELECT 列 1, 列 2, ... FROM テーブル名 WHERE NOT 条件;

例:

SELECT 名前、年齢 FROM 学生 WHERE NOT 年齢= 18;

上記のステートメントは、学生テーブルから年齢が 18 歳以外の学生レコードを取得します。

3. 接続クエリ

接続クエリは、複数のテーブルからデータを取得し、結果を結合するために使用されます。通常、INNER JOIN または LEFT JOIN ステートメントが使用されます。構文は次のとおりです。

SELECT 列 1, 列 2, ... FROM テーブル名 1 JOIN テーブル名 2 ON テーブル名 1.列名=テーブル名 2.列名 WHERE 条件;

ここで、TABLE_NAME1 と TABLE_NAME2 は、テーブル名 1 とテーブル名 2 の名前です。接続する 2 つのテーブル。JOIN 句で接続するタイプを指定し、ON 条件で結合テーブルの列を指定します。

  1. INNER JOIN ステートメント

INNER JOIN ステートメントは、両方のテーブルに共通の行データを返します。これには、同じ列値を持つ両方のテーブルの行が含まれます。構文は次のとおりです:

SELECT 列 1, 列 2, ... FROM テーブル名 1 INNER JOIN テーブル名 2 ON テーブル名 1.列名=テーブル名 2.列名;

例:

SELECT students.name, course.name FROM students INNER JOIN course ON students.course_id=courses.course_id;

上記のステートメントは、students テーブルと course テーブルから名前とコース名を取得し、それらを結合します。

  1. LEFT JOIN ステートメント

LEFT JOIN ステートメントは、左側のテーブルのすべての行と、右側のテーブルの一致する行を返します。右側のテーブルに一致する行がない場合、結果セットの右側のテーブル列は NULL になります。構文は次のとおりです:

SELECT 列 1, 列 2, ... FROM テーブル名 1 LEFT JOIN テーブル名 2 ON テーブル名 1.列名=テーブル名 2.列名;

例:

SELECT students.name、courses.name FROM students LEFT JOIN course on students.course_id=courses.course_id;

上記のステートメントは、学生テーブルから名前とコース名を取得し、コースに登録していない学生もすべて含めます。

概要

上記は、MySQL の基本、高度、および接続クエリ メソッドをクエリする方法です。これらのメソッドをマスターすることは、MySQL を使用する上で重要であり、データベース管理者や開発者がより効果的に管理するのに役立ちます。 . データを取得します。

以上がmysqlにクエリを実行する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート