我想检查是否存在具有此值的列的现有行。我正在尝试使此代码正常工作:
IF COUNT(SELECT * FROM RENTALHISTORY WHERE RESMID=10380 AND RTHDISPLAYBIT='1') = 1
BEGIN
PRINT 'HELLO'
END
ELSE
BEGIN
PRINT 'HI'
END
我想检查rentalhistory
表中是否有resmid
10380 和rthdisplaybit
1 的行。我无法让它工作。
您可以使用exists
以下子句:
IF exists(SELECT 1
FROM RENTALHISTORY
WHERE RESMID=10380
AND RTHDISPLAYBIT='1')
BEGIN
PRINT 'HELLO'
END
ELSE
BEGIN
PRINT 'HI'
END
你就不能这样算吗?
if (SELECT count(*) FROM RENTALHISTORY WHERE RESMID=10380 AND RTHDISPLAYBIT='1') = 1
BEGIN
PRINT 'HELLO'
END
ELSE
BEGIN
PRINT 'HI'
END
您可以使用If exists
:
IF EXISTS (SELECT * FROM RENTALHISTORY WHERE RESMID=10380 AND RTHDISPLAYBIT='1')
Print 'Found'
ELSE
Print 'Not found'