SQLベースのクエリステートメント

SQLベースのクエリステートメント

SQL ステートメントでは、クエリが最もよく使用される操作です。SQL はテーブル内のデータをクエリできるだけでなく、算術演算や式の結果を返すこともできます。次に、基本的なクエリ ステートメントについて学習しましょう。

1. 基本的なSELECT文

1. 指定されたフィールドをクエリする

構文形式:

SELECT <字段名>,... FROM <表名>;

ステートメントでは複数のフィールドを指定でき、指定されたフィールドに基づいて結果が表示されます。

たとえば、ユーザー テーブル内のユーザー ID、ユーザー名、ニックネーム、性別情報を照会します。

users から user_id、user_name、nick_name、sex を選択します。

2. すべてのフィールドをクエリする

テーブル内のすべてのフィールドを表示するには、アスタリスク「*」を使用します。たとえば、次のステートメントは、 usersテーブル内のすべてのデータを照会します。

ユーザーから * を選択します。

「*」はすべてのフィールドを表します。データベースがステートメントを解析するときに、テーブル内のフィールド名を使用して展開します。実際の状況に応じて、「*」をuser_iduser_namenick_namesexmobileemailなどのテーブル内のフィールドに置き換えます。

3. エイリアスを設定する

列の別名を設定するには、AS キーワードを使用します。

SELECT user_id AS iduser_name ASユーザー名、 nick_name ASニックネーム、 sex AS性別FROM users ;

4. 定数クエリ

SELECT文では、列名だけでなく定数も記述できます。

次のように:

100を選択;
'ユーザー'を選択します。

5. 式クエリ

選択98%100;

6. 重複排除

SELECTステートメントでDISTINCTキーワードを使用すると、クエリ結果内の重複レコードを削除できます。たとえば、 user_nameの重複データを削除するには、次のようにします。

SELECT DISTINCT user_name FROM users;

注: DISTINCT は NULL 値をフィルタリングしません。つまり、返される結果には NULL 値が含まれます。

DISTINCT複数の列に適用される場合、適用範囲はそれに続くすべてのフィールドとなり、 DISTINCTすべてのフィールドの前、つまり最初の列名の前にのみ配置できます。

SELECT DISTINCT user_name,nick_name FROM users;

7. 条件付きクエリ

SELECTステートメントは、 WHERE句を使用して、指定された条件を満たすレコードを照会します。WHERE 句は、 WHEREFROM後に続く必要があります。

SELECT <フィールド名>,... FROM <テーブル名> WHERE <条件式>;

7.1 単一条件クエリ

性別が男性のユーザーをクエリします。

SELECT * FROM users WHERE sex='男';

年齢が 24 歳以下のユーザーをクエリします。

SELECT * FROM users WHERE age<=24;

ユーザー ID が 3 ではないユーザーを照会します。

SELECT * FROM users WHERE NOT user_id=3;

3 番目の例ではNOT演算子が使用されています。条件の前にNOTを追加すると、条件が否定され、条件外のレコードが検索されます。

7.2 複数条件クエリ

年齢が 24 歳以下または性別が男性のユーザーをクエリします。

SELECT * FROM users WHERE age<=24 OR sex='男';

年齢が 24 歳以下で性別が男性のユーザーをクエリします。

SELECT * FROM users WHERE age<=24 AND sex='男';

上記のクエリでは複数の条件が使用されています。条件を同時に満たすことができる場合は、 AND演算子を使用します。1 つの条件のみを満たすことができる場合は、 OR演算子を使用します。

7.3 範囲指定によるクエリ

ユーザー ID が範囲 (2,3,7,8) にあるユーザーを照会します。

SELECT * FROM users WHERE user_id IN (2,3,7,8);

IN はWHERE句で複数の値を指定します。IN の後には括弧が続きます。括弧内には 1 つ以上の値を指定できます。値はカンマで区切られ、数字または文字を指定できます。

ユーザー ID が 10 から 15 までのユーザーを照会します。

SELECT * FROM users WHERE user_id BETWEEN 10 AND 15;

BETWEEN ... AND 、数値、テキスト、または日付の 2 つの値間のデータの範囲を指定します。

7.4 あいまいクエリ

LIKEキーワードは、 SQLファジー クエリで検索文字列のパターン マッチングを実行するために使用されます。

構文形式:

フィールド名LIKE pattern

マッチングモード:

  • % : パーセント記号は 0 個、1 個、またはそれ以上の文字に一致します。
  • - : アンダースコア記号は1文字に一致します
モデル意味
'a%' のようにabc、abなど、Aで始まる文字列に一致します。
'%y' をいいねaay、xyなど、yで終わる文字列に一致します。
'%mn% のようにamnb、lmnなど、mnを含む文字列に一致します。
'a_' のようにayやabなど、aで始まり、その後に1文字のみが続くデータに一致します。
'_y' のようにyで終わり、先頭に1文字のみが付いたデータ(ay、xyなど)に一致します。
例えば:

ユーザーのニックネームにtigeriafが含まれるデータを検索します。

SELECT * FROM users WHERE nick_name LIKE '%tigeriaf%';

SQL 基本クエリ ステートメントに関するこの記事はこれで終わりです。SQL 基本クエリ ステートメントに関する関連情報をさらに知りたい場合は、123WORDPRESS.COM の過去の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • MySQL インフラストラクチャ チュートリアル: クエリ ステートメント実行プロセスの詳細な説明
  • 初心者が必ず読むべき 15 個の基本的な SQL クエリ ステートメント
  • SqlServer の基本データ取得、クエリの並べ替えステートメント

<<:  Vue lazyload 画像遅延読み込み例の詳細な説明

>>:  Iframe Web ページのナビゲーション ウィンドウに関する簡単な説明

推薦する

ローカル写真をアップロードする前にプレビューコード例を実装するための HTML5 と jQuery

HTML5 と jQuery はアップロード前にローカル画像のプレビューを実装しており、その効果は...

jconsole を使用してリモート Tomcat サービスを監視する方法

JConsoleとはJConsole は Java 5 で導入されました。 JConsole は、コ...

Typescript+React でモバイルと PC でシンプルなドラッグ アンド ドロップ効果を実現

この記事では、モバイルとPCで簡単なドラッグアンドドロップ効果を実現するためのTypescript ...

CSS設定div背景画像実装コード

コンポーネントに背景画像コントロールを追加するには、次の 2 つの手順だけが必要です。 <表示...

eject を使用せずに create-react-app の設定を変更する方法

1. イジェクトが推奨されないのはなぜですか? 1. eject を実行した後、どのような変化があり...

MySQLバイナリログを介してデータベースデータを復元する方法の詳細な説明

ウェブサイト管理者は、さまざまな理由や操作により、ウェブサイトのデータを誤って削除したり、ウェブサイ...

Firefoxでリンクをクリックしたときに点線の枠線を削除する方法

今日、ブラウザの互換性の問題にいくつか遭遇しました。そのうちの 1 つは奇妙に感じました。Firef...

CSS テキスト配置実装コード

フォームを作成するときに、名前、携帯電話番号、出生地などの 2 つのフィールドを揃える状況に遭遇する...

Dockerコンテナに入る方法と出る方法

1 Dockerサービスを開始するまず、docker サービスを開始する方法を知っておく必要がありま...

Reactは二次的連鎖効果(階段効果)を実現する

この記事では、二次リンク効果を実現するためのReactの具体的なコードを参考までに共有します。具体的...

Centos7 での nginx のインストールと設定に関する詳細なチュートリアル

注: ソフトウェアのインストールの基本ディレクトリ パスは /usr/local です。ソフトウェア...

2秒以内にHTMLページ内の他のページにリダイレクトする方法

コードをコピーコードは次のとおりです。 <!DOCTYPE html PUBLIC "...

MySQL の制限パフォーマンス分析と最適化

1. 結論構文: 制限オフセット、行結論: 同じ行条件では、オフセット値が大きいほど、limitステ...

nginx と Tencent Cloud の無料証明書を使用して https を作成する方法

httpsを取得する方法を勉強しています。最近、Tencent Cloud が提供する無料の SSL...

JS ES6における構造化分解についてお話しましょう

概要es6 では、配列またはオブジェクトから指定された要素を取得する新しい方法が追加されました。これ...