我正在使用Asp.net开发一个网站。我在以下代码中遇到问题! 我想使用DataSqlSource并将其附加到Gridview。我还有一个下拉列表,用于在该页面中进行分类。我想要的是,按下拉列表对Gridview进行分类。在这种情况下,在一个条件中,必须从查询中省略条件(Step3_AddArticleType.Status = @Status)。例如,当下拉列表值为“全部”时,上述条件不得计数。 任何人都可以帮助我吗?
我不知道使用它的结构。这是我的DataSqlSource中的代码:
SELECT Step3_AddArticleType.ArticleType, Step3_AddArticleType.JournalName, Step5_AddTitle.FullTitle, Step3_AddArticleType.Status, Step3_AddArticleType.ArticleNum,
Step5_AddTitle.ArticleID, Step3_AddArticleType.ID, Step3_AddArticleType.Date, CONVERT(VARCHAR(10), Step3_AddArticleType.Date, 103) AS SubmissionDate
FROM Step3_AddArticleType
INNER JOIN Step5_AddTitle ON Step3_AddArticleType.ArticleID = Step5_AddTitle.ArticleID
WHERE (Step3_AddArticleType.CheckFinish = '0')
AND (Step3_AddArticleType.JournalName = @JournalName)
CASE
WHEN @Status<>'All' THEN
AND (Step3_AddArticleType.Status = @Status)
END
非常感谢
答案 0 :(得分:2)
您的WHERE
条件应如下所示。检查所有和特定值之间的OR
:
WHERE (Step3_AddArticleType.CheckFinish = '0') AND (Step3_AddArticleType.JournalName = @JournalName)
AND (@Status = 'All' OR Step3_AddArticleType.Status = @Status)