MySQL データベース SELECT クエリ式分析

MySQL データベース SELECT クエリ式分析

データ管理の大部分は検索であり、SELECT はその大部分を占めています。

SELECT select_expr [,select_expr...] 
[ 
  テーブル参照から 
  WHERE [条件] 
  [GROUP BY {col_name | position} [ASC | DESC],...] 
  [where_condition がある] 
  [ORDER BY {col_name | expr | position} [ASC | DESC],...] 
  [LIMIT {[オフセット,] 行数 | 行数 OFFSET オフセット}] 
]

では、select_expr クエリ式はどのように記述すればよいでしょうか?

a. 各式は希望する列を表し、少なくとも1つは
b. 複数の列はカンマで区切られます

ユーザーデータテーブルで、最初の2列のみを検索するには、

root@localhost test>user から id、username を選択します。

もちろん、クエリ式の順序はデータ テーブル内の順序と一致しない場合があります。この場合、クエリ結果はクエリ式の結果に従って表示されます。つまり、SELECT クエリ式の順序はクエリ結果の順序に影響します。

root@localhost test>user からユーザー名と ID を選択します。

c. アスタリスク (*) はすべての列を表し、table_name.* は名前付きテーブルのすべての列を表すことができます。

root@localhost test>SELECT * FROM user; 
root@localhost test>user.id、user.username を user から選択します。

ここでフィールド名が指定されているのに、なぜ user.id と use.name にデータ テーブル ユーザーの名前を指定する必要があるのでしょうか?複数テーブル接続がある場合、つまり 2 つの異なるテーブルに同じフィールドがある場合です。フィールド名を直接記述すると、そのフィールドがどのデータテーブルに属しているかが分からない場合があります。そのため、データテーブル名を追加することで、フィールドがどのデータテーブルに属しているかを判別できます。

d. クエリ式には、[AS] alias_nameを使用して別名を与えることができます。

root@localhost test>SELECT id AS userID,username AS Uname FROM user;

テーブル内の元の ID とユーザー名が userID と Uname になっていることがわかり、エイリアスも結果に影響します。

ここでエイリアスの構文に注意してください。

root@localhost test>SELECT id username FROM user;

この時点で、ユーザー名は id のエイリアスとして表示されます。つまり、エイリアスがデータ テーブル内の実際のフィールドと一致する場合、ユーザー名は実際のフィールドではなくエイリアスを参照するようになります。

e. エイリアスはGROUP BY、ORDER BY、またはHAVING句で使用できます。

要約する

上記は、編集者が紹介したMySQLデータベースSELECTクエリ式の解析です。皆様のお役に立てれば幸いです。ご質問がある場合は、メッセージを残してください。編集者がすぐに返信します。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。

以下もご興味があるかもしれません:
  • SqlクエリMySqlデータベーステーブル名と説明テーブルフィールド(列)情報
  • MySQL データベースの詳細な説明 - 複数テーブル クエリ - 内部結合、外部結合、サブクエリ、相関サブクエリ
  • MySQL データベースの高度なクエリとマルチテーブルクエリ
  • Mysql データベース テーブルのインデックスによってクエリ速度が向上しないのはなぜですか?
  • MySQL データベース クエリの高度なマルチテーブル クエリの詳細な説明
  • MySQL データベース テーブルにインデックスがあるにもかかわらず、クエリが遅いのはなぜですか?

<<:  CentOS7.4 に MySQL 5.7.26 をインストールするための詳細なチュートリアル

>>:  Ubuntu に MySQL 5.7 をインストールし、データ ストレージ パスを構成する方法

推薦する

MySQLインデックスの詳細な分析

序文インデックスの選択はオプティマイザ段階の作業であることはわかっていますが、オプティマイザは万能で...

postcss-pxtorem モバイル適応の実装

コマンドを実行してプラグインpostcss-pxtoremをインストールします npm インストール...

MySQL コピーテーブルと許可分析の 3 つの実装方法

テーブルを素早くコピーする方法まず、テーブル db1.t を作成し、1000 行のデータを挿入します...

Linuxプロセス監視と自動再起動の簡単な実装方法

目的: Linux では、さまざまな理由でサーバー プログラムがダンプされ、ユーザーの使用に影響する...

XHTML 入門チュートリアル: シンプルな Web ページの作成

1 分で最初の Web ページを作成します。簡単な Web ページを作ってみましょう。ぜひフォローし...

Docker-Composeコマンドの使い方の詳しい説明

Docker コンテナはさまざまな方法で管理およびデプロイできます。 Docker コマンドを直接使...

Ant Design Pro ログイン機能にグラフィック検証コード コンポーネントを統合する方法

序文:この記事では、Ant Design Proログイン機能にグラフィック検証コードコンポーネントを...

FirefoxのWeb開発者を使用してWebページのスタイルを無効にする方法

前提条件: Web開発者プラグインがインストールされている操作手順: [ツール] -> [We...

Dockerコンテナのログ処理の詳細な説明

Docker には多くのログ プラグインがあります。デフォルトでは json-file を使用します...

Nodejs がイントラネット侵入サービスを実装

目次1. LAN内のプロキシ2. イントラネットの浸透イントラネット侵入とは何ですか?橋プロキシサー...

Ubuntu の起動後にアプリケーションを実行するためのターミナルの設定方法

1.メニューバーにスタートと入力し、スタートアップアプリケーションをクリックして入力します。 2. ...

下線を実現するための CSS3 トランジションの例コード

この記事では、下線を実現するための CSS3 トランジションのサンプル コードを紹介します。このコー...

MySQLでレコードを変更する場合、更新操作フィールド = フィールド + 文字列

シナリオによっては、varchar 型のフィールドを変更する必要があり、変更の結果は 2 つのフィー...

HTML における li タグの水平配置の例

ほとんどのナビゲーション バーは、下の図に示すように水平に配置されていますが、これはどのように実現さ...

Docker コンテナにデプロイされた Django のタイムゾーンの問題

目次Django でのタイムゾーン設定USE_TZ=真USE_TZ=偽Linux コンテナでのタイム...