0

以下查询产生 6 个结果:

SELECT ATTACHMENT_ID,
       /* Somme other columns */
       THUMBNAIL_EXIST,
       CASE isnull ((SELECT TOP 1 EMAIL_ID
                     FROM   EMAILS_ATTACHMENTS
                     WHERE  ATTACHMENT_ID = vwFILES_ATTACHMENTS.ATTACHMENT_ID), '00000000-0000-0000-0000-000000000000')
         WHEN '00000000-0000-0000-0000-000000000000' THEN '0'
         ELSE '1'
       END AS SENT_ATTACHMENT,
       CASE File_ext
         WHEN '.pdf' THEN 'true'
         ELSE 'false'
       END AS 'enablecheck',
       CASE VISIBLE_TO_CLIENT
         WHEN '1' THEN '/FACTS/App_Themes/SugarClassic/images/check_inline.gif'
         ELSE '/FACTS/App_Themes/SugarClassic/images/close_inline.gif'
       END AS 'VISIBLE_TO_CLIENT_PATH'
FROM   vwFILES_ATTACHMENTS
WHERE  ( 1 = 1 )
       AND ( PARENT_TYPE = 'Files' )
       AND ( PARENT_ID = '55e52006-ce85-4781-b6f9-00b68c04d62f' )
       AND ( DELETED = 0 )
ORDER  BY DATE_ENTERED DESC 

我修改了DELETED一行上的列,将其从 更改FalseTrue。当我尝试搜索DELETED = 1而不是 时DELETED = 0,搜索不会产生任何结果。

为什么我更改的那一行没有出现?DELETED = 0运行查询时(上图),我只得到 5 个结果。在我专门搜索它之前,不会检索到第 6 个结果ATTACHMENT_ID

谢谢你的帮助。

4

1 回答 1

1

鉴于帖子和评论,很难确定您的情况如何。我会尝试这样的事情来确定您的 Deleted 列值:

SELECT DELETED, COUNT(*)
FROM vwFILES_ATTACHMENTS
GROUP BY DELETED

如果那会返回正确的结果,那么听起来很愚蠢,假设 Deleted = 1 不起作用,请尝试以下操作:

SELECT * 
FROM vwFILES_ATTACHMENTS
WHERE Deleted <> 0

如果 = 1 或 <> 0 工作并返回正确的行,那么@Joel 很可能是正确的,他假设 WHERE 子句中的其他约束导致它不返回。如果 = 1 或 <> 0 不起作用,那么我一无所知。

祝你好运。

于 2013-01-16T18:53:09.930 回答