如何使用SQL MINUS关键字

软件Aŋɖ技巧

我正在使用asp.net sql构建社交网络,但是在SQL上使用MINUS Operator时遇到了问题。我使用以下关键字选择所有朋友的用户数据

Select * from [UserData]

我想从该查询中减少以下查询

SELECT *
FROM   [Friendship]
WHERE  Friend2 = '" + Session["Email"].ToString() + "'
       AND Friend_Status = 1
UNION
SELECT *
FROM   [Friendship]
WHERE  Friend1 = '" + Session["Email"].ToString() + "'
       AND Friend_Status = 1 

我试过了,但是当我运行它时,它仍然提供有关此查询的详细信息

Select * from [UserData]

这是我尝试过的代码

SELECT *
FROM   [UserData]
MINUS
SELECT *
FROM   [Friendship]
WHERE  Friend2 = '" + Session["Email"].ToString() + "'
       AND Friend_Status = 1
UNION
SELECT *
FROM   [Friendship]
WHERE  Friend1 = '" + Session["Email"].ToString() + "'
       AND Friend_Status = 1 

你能告诉我我如何使用减号运算符吗?

普雷迪普

Sql Server您可以使用Except等于的运算符Minus

EXCEPT从左输入查询返回不由右输入查询输出的不同行。

查询应该像

SELECT *
FROM   [UserData]
EXCEPT
SELECT *
FROM  (SELECT *
       FROM   [Friendship]
       WHERE  Friend2 = '" + Session["Email"].ToString() + "'
              AND Friend_Status = 1
       UNION
       SELECT *
       FROM   [Friendship]
       WHERE  Friend1 = '" + Session["Email"].ToString() + "'
              AND Friend_Status = 1) a 

注意:请确保您等于。FreindshipUserData表中的列

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章