我有一个有4列的数据表;用户名,标志,代码和唯一参考
现在,Unique Ref就像一个引用产品的代码。有一个列表。每个用户都应该有权访问该唯一引用。因此,如果有100个唯一参考的JSMITH04在此表中会出现100次,并且他将为每个参考设置唯一的参考设置。
现在让我们说另一个名为DAVIDMI09的人在表中只有50条记录(这意味着他没有分配给他的所有100个唯一参考号)。我怎样才能找到他没有分配给他的唯一参考?在TSQL中执行此操作的最佳方法是什么?
Username Flag Code Unique Ref
JSMITH04 Z T 12459/43454
由于
答案 0 :(得分:0)
只需选择用户没有的,您可以使用除外:
SELECT DISTINCT [Unique Ref]
FROM TABLE_NAME
EXCEPT
SELECT DISTINCT [Unique Ref]
FROM TABLE_NAME
WHERE USERNAME == 'DAVIDMI09'
或者您可以使用NOT IN
SELECT DISTINCT [Unique Ref]
FROM TABLE_NAME
WHERE [Unique Ref] NOT IN (
SELECT [Unique Ref]
FROM TABLE_NAME
WHERE USERNAME == 'DAVIDMI09'
)