租赁表:
CREATE TABLE RENTAL
(
TransactionNo int NOT NULL AUTO_INCREMENT,
MemberID int NOT NULL,
ItemNo char(3) NOT NULL,
RentalEmployeeID varchar(30),
ReturnEmployeeID varchar(30),
Checkout_date DATE,
Checkin_date DATE,
Return_date DATE,
ItemQuantity int(11) NOT NULL,
TotalPrice DOUBLE(10,2) NOT NULL,
ItemFee DOUBLE(10,2),
PRIMARY KEY(TransactionNo),
FOREIGN KEY(MemberID) REFERENCES Member(MemberID),
FOREIGN KEY(ItemNo) REFERENCES Item(Itemno),
FOREIGN KEY(RENTALEMPLOYEEID) REFERENCES Employee(EmployeeID),
FOREIGN KEY(RETURNEMPLOYEEID) REFERENCES Employee(EmployeeID)
)
我正在尝试检索所有为 Joe Smith checkin 或 checkout 某些内容的人,但我不能只获得 checkin 或 checkout ,而不能同时获得两者。我需要嵌套子句吗?
SELECT r.ItemNo,
i.Category,
i.Style,
i.Description,
r.`CheckIn_date`,
r.`Checkout_date`,
e.Fname,
e.Lname
FROM MEMBER AS m,
ITEM AS i,
RENTAL AS r,
Employee e
WHERE m.MemberID = r.MemberID
AND m.Fname = 'Joe’
AND m.Lname=’Smith’
AND r.ItemNo = i.ItemNo
AND r.RentalEmployeeID = e.EmployeeID
最佳答案
我想你是说没有选择包含 checkin 和 checkout 的记录。查询不会阻止这种情况。一定是数据中缺少这种情况。
关于mySQL查询检索问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4290296/