違いが存在し、中に存在し、重いと明確な違いを行きますか?

:小扁は、我々はすべてでの違いを知っているとの存在と信じて
、さまざまな状況の使用は1
メインクエリテーブルの結果セットのレコード内のサブクエリにレス適用にSQLと大きなインデックステーブルを持っています。メインクエリ少ないレコード、サブクエリ大きなテーブルの外側の層に存在する該当するSQLは、インデックスが時間を持っています。

図2は、別の駆動順序
サブクエリINは、第一のルックアップテーブルであり、その後、内側及び外側のデカルト積を行い、条件に応じてスクリーニングしました。存在し、駆動テーブルとして訪問されるべき第一の外側のテーブルです。

図3に示すように、異なる原理基礎となる
ハッシュのための外側及び内側テーブルジョインことで、ループサイクルとして存在は、内部テーブルのクエリをリサイクル各ループの外観です。

NULLで処理されない、NULL値が処理されます存在します。しかし、私はボースピーカーがもう一つの違いにあったNULL値の異なる治療法です昨日見ました。私はと聞いたことがないので、好奇心の精神は、それをテストするために行ってきました、私は別のを発見した、データが同じであるチェックしてください。ここではそれらをテストしていない他の小さなシリーズについては、興味のあるパートナーが少しプライベートテストを所有しています。

STUの学生番号、名前とクラス記憶された2つのテーブルを作成
違いが存在し、中に存在し、重いと明確な違いを行きますか?
年生テーブル保存された番号とスコアを。
違いが存在し、中に存在し、重いと明確な違いを行きますか?
コードは以下の通りである:
SELECT (SELECT EXISTS STU T1から t1.stunoによって注文等級T2 t1.stuno = t2.stunoから)。

select from stu t1 where t1.stuno in (select t2.stuno from grade t2 where t1.stuno = t2.stuno) order by t1.stuno;
查询结果是一样的,如下:
違いが存在し、中に存在し、重いと明確な違いを行きますか?
在这里注意两点:
1、sql中查询的字段均为stu表中的字段,不能写为:
select t2.
from stu t1 where t1.stuno in (select t2.stuno from grade t2 where t1.stuno = t2.stuno) order by t1.stuno;否则会报错t2.标示符无效。
2、in是单字段查询,所以子查询中一定要注意!不能写为:
select
from stu t1 where t1.stuno in (select * from grade t2 where t1.stuno = t2.stuno) order by t1.stuno;否则会报错值过多。

如果哪位小伙伴能解决,欢迎给小编留言!

次へ、存在し、異なる重量議論する
:以下のコード、固有のID
を選択STUは、(SELECT T1存在から t1.stuno順がt1.stuno = t2.stunoグレードT2から);
以下に示すようにデータ結果をチェックアウトは:
違いが存在し、中に存在し、重いと明確な違いを行きますか?
私は常に私たちは重い影響を与えることがない存在し、ここで困ったのですか?なぜ重複したデータとIDのデータで表示され、その後、試験後の試験データが小扁が行われているサブクエリ、その後、サブクエリのデータ重複除外の条件を満たすために場所をチェックアウトするように見えることを発見し、しないメインテーブルの上に表のデータとメインデータ線に戻る前にデエンファシス。その後、この知見に基づいてテストを行うと、それは本当に、そう整頓今日とても小さいシリーズであることが判明し、私はより多くの人々は私が馬鹿をプレイ好きではない願って、時間の無駄が、また間違った理解があったということではありません!
あなたは小扁ウェルカムメッセージに任意のより良いアイデアを持っています!

おすすめ

転載: blog.51cto.com/12777507/2403166