SQL Server:位列不产生结果
以下查询产生6个结果:SQL Server:位列不产生结果,sql,sql-server,sql-server-2008,Sql,Sql Server,Sql Server 2008,以下查询产生6个结果: SELECT ATTACHMENT_ID, /* Somme other columns */ THUMBNAIL_EXIST, CASE isnull ((SELECT TOP 1 EMAIL_ID FROM EMAILS_ATTACHMENTS WHERE ATTACHMENT_ID = vwFILES_ATTACHMENTS.ATTAC
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
列,将其从False
更改为True
。当我尝试搜索DELETED=1
而不是DELETED=0
时,搜索不会产生任何结果
为什么我换的那一排没有出现?当我运行DELETED=0
查询(如上)时,我只得到5个结果。第六个结果在我专门搜索它的附件ID
之前不会被检索到
谢谢你的帮助。鉴于帖子和评论,很难确定你的处境。我将尝试以下方法来确定删除的列值:
SELECT DELETED, COUNT(*)
FROM vwFILES_ATTACHMENTS
GROUP BY DELETED
如果这返回了正确的结果,那么尽管听起来很愚蠢,但假设Deleted=1不起作用,请尝试以下操作:
SELECT *
FROM vwFILES_ATTACHMENTS
WHERE Deleted <> 0
选择*
从VWU文件或附件
其中删除了0
如果=1或0工作并返回正确的行,那么@Joel的假设是正确的,即WHERE子句中的其他约束导致它不返回。如果=1或0不起作用,那么我就不知所措
祝你好运。也许在你看来你拥有前五名?我该如何检查?它不在查询中。是否使用此视图进行更新?还是直接更新了表?新记录可能不符合视图的搜索条件以及查询中提到的where子句。我正在使用MSSQL Server Management Studio,并通过网格屏幕(而不是通过查询)进行更新。有区别吗?位列没有错误。我强烈建议您完全停止使用可视化设计器,查询表而不是视图。谢谢您的回答。我遇到的问题与我使用
vw
或view
表而不查询表本身有关。我在上面的评论中做了更多的解释。