ホームページ データベース SQL SQL について 上級 上級

SQL について 上級 上級

Dec 04, 2020 pm 05:05 PM
sql

#SQL チュートリアル コラムでは、10 の高度な進歩を紹介します

SQL について 上級 上級

推奨 (無料): sql チュートリアル

sql Advanced


1、TOP 句 TOP 副次句ステートメント返されるレコードの数を指定するために使用されます。

SELECT TOP 2 * FROM Persons 
 SELECT TOP 50 PERCENT * FROM Persons
ログイン後にコピー

2. リンク検索パターン 次に、上の「人物」テーブルから「N」で始まる都市に住んでいる人々を選択します。次の SELECT ステートメントを使用できます:

SELECT * FROM Persons 
 WHERE City LIKE ‘N%’
ログイン後にコピー

ヒント: 「%」はワイルドカード (パターン内の欠落文字) を定義するために使用できます。

NOT キーワードを使用すると、生きている人々を選択できます。 「Persons」テーブルの「lon」を含まない都市の場合:

次の SELECT ステートメントを使用できます:

SELECT * FROM Persons 
 WHERE City NOT LIKE ‘%lon%’
ログイン後にコピー
ログイン後にコピー

3、ワイルドカード文字


(1) NOT キーワードを使用すると、「lon」を含まない都市に住む人を「persons」テーブルから選択できます。 SQL について 上級 上級 次の SELECT ステートメントを使用できます。

SELECT * FROM Persons 
 WHERE City NOT LIKE ‘%lon%’
ログイン後にコピー
ログイン後にコピー

(2) 上の「人物」テーブルから、名前の最初の文字が「eorge」である人物を選択します。

次の SELECT ステートメントを使用できます。

##

SELECT * FROM Persons 
 WHERE FirstName LIKE ‘_eorge’
ログイン後にコピー

(3) 上の「人物」テーブルから都市が「A」、「L」、または「N」で始まる人を選択します。
次の SELECT ステートメントを使用できます。 :

SELECT * FROM Persons 
 WHERE City LIKE ‘[ALN]%’ 
 不 SELECT * FROM Persons 
 WHERE City LIKE ‘[!ALN]%’
ログイン後にコピー


4. IN 演算子

IN 演算子を使用すると、WHERE 句に複数の値を指定できます。 IN 演算子の例 ここで、上の表から Adams と Carter という姓を持つ人々を選択します。 次の SELECT ステートメントを使用できます:

SELECT * FROM Persons 
 WHERE LastName IN (‘Adams’,’Carter’)
ログイン後にコピー


5 , BETWEEN 演算子

BETWEEN … AND 演算子は、2 つの値の間のデータ範囲を選択します。値には、数値、テキスト、または日付を使用できます。 「Adams」 (この値を含む) と「Carter」 (この値を含まない) の間の人物をアルファベット順に表示するには、次の SQL を使用します。

SELECT * FROM Persons 
 WHERE LastName 
 BETWEEN ‘Adams’ AND ‘Carter’
ログイン後にコピー

補数is No BETWEEN

##6. SQL を使用すると、列名とテーブル名の別名 (Alias) を指定できます。

それぞれ 2 つのテーブルがあるとします。 「人」と「Product_Orders」。それぞれにエイリアス「p」と「po」を付けます。

ここで、「John Adams」のすべての注文をリストしたいと思います。 次の SELECT ステートメントを使用できます:

SELECT po.OrderID, p.LastName, p.FirstName 
 FROM Persons 
AS
 p, Product_Orders 
AS
 po 
 WHERE p.LastName=’Adams’ AND p.FirstName=’John’
ログイン後にコピー



SELECT LastName AS Family, FirstName AS Name 
 FROM Persons
ログイン後にコピー

7、結合、キー
# の別名も使用できます。 # # 場合によっては、完全な結果を得るために、2 つ以上のテーブルから結果を取得する必要があります。 join を実行する必要があります。

データベース内のテーブルはキーによって相互にリンクできます。主キー(Primary Key)は、各行の値が一意である列です。



2 つのテーブルを参照する
2 つのテーブルを参照することで、2 つのテーブルからデータを取得できます。 SQL について 上級 上級 製品を注文したのは誰ですか? どの製品が注文されましたか?
SQL について 上級 上級

SELECT Persons.LastName, Persons.FirstName, Orders.OrderNo 
 FROM Persons, Orders 
 WHERE Persons.Id_P = Orders.Id_P
ログイン後にコピー

次のステートメントは上記のステートメントと同じ効果があります
SQL JOIN - 結合の使用
上記の方法に加えて、キーワード JOIN を使用してデータを抽出することもできます。 2 つのテーブルがデータを取得します。
全員の注文をリストしたい場合は、次の SELECT ステートメントを使用できます:

SELECT Persons.LastName, Persons.FirstName, Orders.OrderNo 
 FROM Persons 
INNER JOIN
 Orders 
 ON Persons.Id_P = Orders.Id_P 
 ORDER BY Persons.LastName
ログイン後にコピー


INNER JOIN
少なくとも 1 つ一致するものがあれば行を返します

NOTE:

JOIN: テーブル内に少なくとも 1 つの一致がある場合は行を返します

  • LEFT JOIN : Even if 右のテーブルに一致するものがない場合でも、左のテーブルのすべての行を返します

  • RIGHT JOIN: 左のテーブルに一致するものがない場合でも、すべての行を返します右側のテーブルから

  • #FULL JOIN: いずれかのテーブルに一致がある限り行を返します

8、SQL UNION 操作符
UNION 操作符用于合并两个或多个 SELECT 语句的结果集。
请注意,UNION 内部的 SELECT 语句必须拥有相同数量的列。列也必须拥有相似的数据类型。同时,每条 SELECT 语句中的列的顺序必须相同。
列出所有在中国和美国的不同的雇员名:

SELECT E_Name FROM Employees_China 
 UNION 
 SELECT E_Name FROM Employees_USA
ログイン後にコピー

union和union all的区别就是union all会把所有的结果都输出来,union会把相同的给去掉

9、CREATE DATABASE database_name
用于创建数据库

CREATE TABLE Persons 
 ( 
 Id_P int, 
 LastName varchar(255), 
 FirstName varchar(255), 
 Address varchar(255), 
 City varchar(255) 
 )
ログイン後にコピー

SQL について 上級 上級

10、sql约束
(1) 下面的 SQL 语句强制 “Id_P” 列和 “LastName” 列不接受 NULL 值:

CREATE TABLE Persons 
 ( 
 Id_P int NOT NULL, 
 LastName varchar(255) NOT NULL, 
 FirstName varchar(255), 
 Address varchar(255), 
 City varchar(255) 
 )
ログイン後にコピー

(2)SQL UNIQUE 约束 

  • UNIQUE 约束唯一标识数据库表中的每条记录。 

  • UNIQUE 和 PRIMARY KEY 约束均为列或列集合提供了唯一性的保证 

  • PRIMARY KEY 拥有自动定义的 UNIQUE 约束。 

请注意,每个表可以有多个 UNIQUE 约束,但是每个表只能有一个 PRIMARY KEY 约束。
(3)SQL PRIMARY KEY 约束
PRIMARY KEY 约束唯一标识数据库表中的每条记录。 

  • 主键必须包含唯一的值。 

  • 主键列不能包含 NULL 值。
    每个表都应该有一个主键,并且每个表只能有一个主键。

想了解更多编程学习,敬请关注php培训栏目!

以上がSQL について 上級 上級の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Hibernate フレームワークにおける HQL と SQL の違いは何ですか? Hibernate フレームワークにおける HQL と SQL の違いは何ですか? Apr 17, 2024 pm 02:57 PM

HQL と SQL は Hibernate フレームワークで比較されます。HQL (1. オブジェクト指向構文、2. データベースに依存しないクエリ、3. タイプ セーフティ)、SQL はデータベースを直接操作します (1. データベースに依存しない標準、2. 複雑な実行可能ファイル)。クエリとデータ操作)。

Oracle SQLでの除算演算の使用法 Oracle SQLでの除算演算の使用法 Mar 10, 2024 pm 03:06 PM

「OracleSQLでの除算演算の使用方法」 OracleSQLでは、除算演算は一般的な数学演算の1つです。データのクエリと処理中に、除算演算はフィールド間の比率を計算したり、特定の値間の論理関係を導出したりするのに役立ちます。この記事では、OracleSQL での除算演算の使用法を紹介し、具体的なコード例を示します。 1. OracleSQL における除算演算の 2 つの方法 OracleSQL では、除算演算を 2 つの異なる方法で実行できます。

Oracle と DB2 の SQL 構文の比較と相違点 Oracle と DB2 の SQL 構文の比較と相違点 Mar 11, 2024 pm 12:09 PM

Oracle と DB2 は一般的に使用される 2 つのリレーショナル データベース管理システムであり、それぞれに独自の SQL 構文と特性があります。この記事では、Oracle と DB2 の SQL 構文を比較し、相違点を示し、具体的なコード例を示します。データベース接続 Oracle では、次のステートメントを使用してデータベースに接続します: CONNECTusername/password@database DB2 では、データベースに接続するステートメントは次のとおりです: CONNECTTOdataba

MyBatis動的SQLタグのSetタグ機能の詳細説明 MyBatis動的SQLタグのSetタグ機能の詳細説明 Feb 26, 2024 pm 07:48 PM

MyBatis 動的 SQL タグの解釈: Set タグの使用法の詳細な説明 MyBatis は、豊富な動的 SQL タグを提供し、データベース操作ステートメントを柔軟に構築できる優れた永続層フレームワークです。このうち、Set タグは、UPDATE ステートメントで SET 句を生成するために使用され、更新操作でよく使用されます。この記事では、MyBatis での Set タグの使用法を詳細に説明し、特定のコード例を通じてその機能を示します。 SetタグとはMyBatiで使用するSetタグです。

SQL の ID 属性は何を意味しますか? SQL の ID 属性は何を意味しますか? Feb 19, 2024 am 11:24 AM

SQL における Identity とは何ですか? 具体的なコード例が必要です。SQL では、Identity は自動インクリメント数値の生成に使用される特別なデータ型です。多くの場合、テーブル内のデータの各行を一意に識別するために使用されます。 Identity 列は、各レコードが一意の識別子を持つようにするために、主キー列と組み合わせてよく使用されます。この記事では、Identity の使用方法といくつかの実用的なコード例について詳しく説明します。 Identity の基本的な使用方法は、テーブルを作成するときに Identity を使用することです。

SQL ステートメントを使用せずに Springboot+Mybatis-plus を実装して複数のテーブルを追加する方法 SQL ステートメントを使用せずに Springboot+Mybatis-plus を実装して複数のテーブルを追加する方法 Jun 02, 2023 am 11:07 AM

Springboot+Mybatis-plus が SQL ステートメントを使用して複数テーブルの追加操作を実行しない場合、私が遭遇した問題は、テスト環境で思考をシミュレートすることによって分解されます: パラメーターを含む BrandDTO オブジェクトを作成し、パラメーターをバックグラウンドに渡すことをシミュレートします。 Mybatis-plus で複数テーブルの操作を実行するのは非常に難しいことを理解してください。Mybatis-plus-join などのツールを使用しない場合は、対応する Mapper.xml ファイルを設定し、臭くて長い ResultMap を設定するだけです。対応する SQL ステートメントを記述します。この方法は面倒に見えますが、柔軟性が高く、次のことが可能です。

SQL の 5120 エラーを解決する方法 SQL の 5120 エラーを解決する方法 Mar 06, 2024 pm 04:33 PM

解決策: 1. ログインしているユーザーがデータベースにアクセスまたは操作するための十分な権限を持っているかどうかを確認し、ユーザーが正しい権限を持っているかどうかを確認します; 2. SQL Server サービスのアカウントに指定されたファイルまたはデータベースにアクセスする権限があるかどうかを確認します。 3. 指定されたデータベース ファイルが他のプロセスによって開かれているかロックされているかどうかを確認し、ファイルを閉じるか解放して、クエリを再実行します。管理者として試してください。Management Studio をなどとして実行します。

MySQL でデータの集計と統計に SQL ステートメントを使用するにはどうすればよいですか? MySQL でデータの集計と統計に SQL ステートメントを使用するにはどうすればよいですか? Dec 17, 2023 am 08:41 AM

MySQL でデータの集計と統計に SQL ステートメントを使用するにはどうすればよいですか?データの集計と統計は、データ分析と統計を実行する際の非常に重要な手順です。 MySQL は強力なリレーショナル データベース管理システムとして、データの集約と統計操作を簡単に実行できる豊富な集約機能と統計機能を提供します。この記事では、SQL ステートメントを使用して MySQL でデータの集計と統計を実行する方法を紹介し、具体的なコード例を示します。 1. カウントには COUNT 関数を使用します。COUNT 関数は最も一般的に使用されます。

See all articles