【发布时间】:2020-07-13 07:07:02
【问题描述】:
我有三个表格,分别是 Complaint、ComplaintDetail 和 Person。
create table Complaint (
id int identity(1,1) primary key,
complaintName varchar(50),
datetime datetime,
place nvarchar(MAX),
declarantName nvarchar(50),
detail nvarchar(MAX),
verifyStatus bit /* approved or not */
)
go
create table ComplaintDetail (
id int identity(1,1) primary key,
personId int,
constraint cdp foreign key (personId) references Person(id),
compId int,
constraint cpc foreign key (compId) references Complaint(id),
crimeType nvarchar(50)
)
go
create table Person (
id int primary key,
name nvarchar(50),
gender bit NOT NULL,
dob date,
address nvarchar(MAX),
image varchar(100),
nationality varchar(50),
job varchar(20),
alive bit DEFAULT 1
)
我想创建一个 SELECT 程序来查找所有不与该 Person.id 链接的投诉
我尝试了类似的方法,但它不起作用。
CREATE PROC findExcludedComplaints
@personID int
AS
BEGIN
SELECT * FROM Complaint
INNER JOIN ComplaintDetail ON Complaint.id = ComplaintDetail.compId
INNER JOIN Person ON ComplaintDetail.personId != Person.id
WHERE Person.id = @personID
END
GO
【问题讨论】:
-
请比“它不起作用”更具体
标签: sql sql-server sql-server-2014