当前位置: 首页 > 面试题库 >

选择不在另一个表中的行,SQL Server查询

史鸿运
2023-03-14
问题内容

主题表

CREATE TABLE [dbo].[BS_Subject](
     [SubjectID] [bigint] IDENTITY(1,1) NOT NULL,
     [DepartmentID] [bigint] NOT NULL,
     [SubjectName] [varchar](50) NOT NULL,
     [SubjectDescription] [varchar](100) NULL,
     [SubjectShortCode] [varchar](10) NOT NULL,
CONSTRAINT [PK_Subject] PRIMARY KEY CLUSTERED 
(
    [SubjectID] ASC
)

SubjectToClass表

CREATE TABLE [dbo].[BS_SubjectToClass](
[SubjectToClassID] [bigint] IDENTITY(1,1) NOT NULL,
[SubjectID] [bigint] NOT NULL,
[ClassID] [bigint] NOT NULL,
CONSTRAINT [PK_BS_SubjectToClass] PRIMARY KEY CLUSTERED 
(
[SubjectToClassID] ASC
)

我需要列出的所有行Subject,其中的表subjectid是不是在SubjectToClass指定类的表。

我有这个但不能再走了

select Distinct(BS_Subject.SubjectID) DepartmentID, 
       SubjectName, SubjectDescription,    SubjectShortCode
from dbo.BS_Subject
where BS_Subject.SubjectID <> (
SELECT     Distinct(BS_Subject.SubjectID)
FROM         dbo.BS_Subject, dbo.BS_SubjectToClass
Where      BS_Subject.SubjectID = BS_SubjectToClass.SubjectID
And BS_SubjectToClass.ClassID = 2)

问题答案:
SELECT SubjectID, DepartmentID, SubjectName, SubjectDescription, SubjectShortCode
FROM BS_Subject 
WHERE NOT EXISTS 
(SELECT SubjectToClassID FROM BS_SubjectToClass WHERE 
BS_Subject.SubjectID = BS_SubjectToClass.SubjectID
AND BS_SubjectToClass.ClassID =2)


 类似资料:
  • 问题内容: 如何选择一个表中所有未出现在另一表中的行? 表格1: 表2: 表1中不在表2中的行的示例输出: 也许这样的事情应该工作: 问题答案: 如果您在另一条注释中提到有300列,并且想要对所有列进行比较(假设这些列的名称相同),则可以使用a 隐式联接两个表之间所有匹配的列名称,以便不必繁琐地手动输入所有加入条件:

  • 问题内容: 我正在尝试查找一个表中的行,而不是另一个表中的行,这两个表都在不同的数据库中,并且在我要用来匹配的列上也有不同的列名。 我有一个查询,下面的代码,我认为它可能有效,但是速度太慢: 因此查询尝试执行以下操作: 从R2R.partmaster数据库中选择wpsapi4.product_details数据库中没有的所有ID。我匹配的列是partmaster.id和product_detail

  • 问题内容: 如何将此SQL查询转换为Django ORM语句? 请帮助!:) ps ,不受或限制 问题答案: 使用两个QuerySet,如docs所示。

  • 问题内容: 我在SQLite中有两个表: 我的问题是,我该如何编写一个SQL查询来返回不在中的名称? 例如: 在这个例子中,SQL查询应返回的元素,并从,因为他们不是。 问题答案: 这是在“显而易见的”标准SQL中执行的操作: 还有其它方法,如使用,中子句和操作。

  • 问题内容: 我在尝试从不在另一个表中的表中选择特定条目时在MySQL中遇到问题。我知道这句话听起来很疯狂,但这是我要尝试的一个例子。 表用户: 表文章: 表格视图(如果用户查看了特定的文章,则用于存储数据): 现在,我试图选择那些尚未阅读特定文章的用户,例如ID为10的文章。因此,他们在views表中没有条目。 我希望现在更有意义。感谢您的回答。V. 问题答案:

  • 问题内容: 这是我的代码: 您可以看到我要执行的操作,但是我不确定如何正确编写此查询。 我得到的继承人错误: 警告:mysql_fetch_assoc():提供的参数不是有效的MySQL结果资源 这是我的mysql_fetch_assoc: 问题答案: 尝试改变…的喜欢 …至…