ホームページ  >  記事  >  データベース  >  リレーショナル データベース システムで実装できる 3 つの基本的なリレーショナル操作

リレーショナル データベース システムで実装できる 3 つの基本的なリレーショナル操作

(*-*)浩
(*-*)浩オリジナル
2019-06-04 14:06:0212080ブラウズ

リレーショナル データベース管理システムで実装できる 3 つの基本的なリレーショナル操作は、選択 (関係から指定された条件を満たすタプルを見つける操作を選択と呼びます)、射影 (リレーショナル スキーマからいくつかの属性を指定して新しい関係を形成する) です。 )、接続(関係の水平方向の組み合わせ)。

リレーショナル データベース システムで実装できる 3 つの基本的なリレーショナル操作

#Select

比較演算子と論理演算子を使用して、条件を満たすタプルを選択し、結果を計算します。

(推奨学習:

MySQL ビデオ チュートリアル )

給与が 2,000 を超える従業員の名前をクエリする

 SELECT ename FROM emp WHERE sal > 2000;
プロセス: まず、emp テーブルのすべての結果をクエリし、選択操作を使用して給与が 2000 を超える結果を除外し、最後に射影操作を使用して給与のある従業員の名前を取得します。 2000以上!

プロジェクション

推奨コース: MySQL チュートリアル。

射影の演算過程:

まず、j1、j2、…、jkの順で、関係Rから列番号をj1として取り出します。 、j2,...,jk (または属性名のシーケンスは Aj1, Aj2,...,Ajk)、結果から繰り返されるタプルを削除して、Aj1, Aj2,...,Ajk との k 項目の関係を形成します。属性シーケンスとして。

簡単に言うと、クエリ結果から特定の列を取り出し、重複するデータを削除する、これが射影です。

射影は列の観点からの操作です

射影の添え字は列番号または列属性名です

すべての部門の番号をクエリする

SELECT deptno FROM dept;
クエリのプロセス: 最初にクエリを実行して dept テーブルのすべての結果を取得し、次に射影操作によって "deptno" の列データのみを抽出します. SELECT の後に「*」を付けると、すべてのデータが投影されます。

接続操作

接続操作は実際には、デカルト積に基づいて条件 (特定の列が特定の列より大きい、小さい、または等しい) を制限します。条件を満たしていれば結果が得られます。

Natural connection

Natural connection は特殊な接続操作であり、その限定条件は [特定の列が特定の列と等しい] です。私たちがよく使う自然なつながり。デカルト積を消去することは、実際には自然な関係です。

#例

SELECT * FROM emp,dept WHERE dept.deptno = emp.deptno;
dept テーブルの deptno 列を emp の deptno 列と同じに設定します [これは自然な接続です]

More MySQL 関連する技術記事については、

MySQL チュートリアル

列にアクセスして学習してください。

以上がリレーショナル データベース システムで実装できる 3 つの基本的なリレーショナル操作の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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