VF的SQL语句中,EXISTS跟IN有什么区别,举例说明。。。 10
展开全部
EXISTS 可以用来做 大于/小于/等于 之类的判断逻辑
IN 只能判断 等于的操作。
下面是例子:
测试表
CREATE TABLE test_all_any_some1(
data_value INT
);
CREATE TABLE test_all_any_some2(
data_value INT
);
INSERT INTO test_all_any_some1
SELECT 1 UNION ALL
SELECT 2 UNION ALL
SELECT 3 UNION ALL
SELECT 4 UNION ALL
SELECT 5;
INSERT INTO test_all_any_some2
SELECT 1 UNION ALL
SELECT 3 UNION ALL
SELECT 5 UNION ALL
SELECT 7;
EXISTS
-- 要求数据,只要大于测试表1中的任何一个数据就可以了.
SELECT
*
FROM
test_all_any_some2 t2
WHERE
EXISTS
( SELECT
1
FROM
test_all_any_some1 t1
WHERE
t1.data_value < t2.data_value
);
IN
SELECT
*
FROM
test_all_any_some2 t2
WHERE
data_value IN (SELECT data_value FROM test_all_any_some1)
IN 只能判断 等于的操作。
下面是例子:
测试表
CREATE TABLE test_all_any_some1(
data_value INT
);
CREATE TABLE test_all_any_some2(
data_value INT
);
INSERT INTO test_all_any_some1
SELECT 1 UNION ALL
SELECT 2 UNION ALL
SELECT 3 UNION ALL
SELECT 4 UNION ALL
SELECT 5;
INSERT INTO test_all_any_some2
SELECT 1 UNION ALL
SELECT 3 UNION ALL
SELECT 5 UNION ALL
SELECT 7;
EXISTS
-- 要求数据,只要大于测试表1中的任何一个数据就可以了.
SELECT
*
FROM
test_all_any_some2 t2
WHERE
EXISTS
( SELECT
1
FROM
test_all_any_some1 t1
WHERE
t1.data_value < t2.data_value
);
IN
SELECT
*
FROM
test_all_any_some2 t2
WHERE
data_value IN (SELECT data_value FROM test_all_any_some1)
2012-02-29
展开全部
不得了了哦 当个辅导员还问计算机哦
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询