如何为下面给出的查询编写等效的SQL case语句?
发布时间:2021-01-19 21:35:56 所属栏目:MsSql教程 来源:网络整理
导读:这是我的工作查询: Query = "select Cust_Id,Card_Number,Clients_Title,Address_Current,Phone_Number,Mobile_Number from Customer_New Where 1=1";try{ if (txt_title.Text != "") Query += " and Clients_Title Like '%" + txt_title.Text + "%'"; if
这是我的工作查询: Query = "select Cust_Id,Card_Number,Clients_Title,Address_Current,Phone_Number,Mobile_Number from Customer_New Where 1=1"; try { if (txt_title.Text != "") Query += " and Clients_Title Like '%" + txt_title.Text + "%'"; if (txt_address.Text != "") Query += " and Address_Current Like '%" + txt_address.Text + "%'"; if (txt_phone.Text != "") Query += " and Phone_Number Like '%" + txt_phone.Text + "%'"; if (txt_mobile.Text != "") Query += " and Mobile_Number Like '%" + txt_mobile.Text + "%'"; if (cbo_location.Text != "") Query += " and AreaLocation Like '%" + cbo_location.Text + "%'"; } catch { } 在这里,我试图编写其等效的SQL case语句. SELECT Cust_Id,Key_Person,Mobile_Number,AreaLocation FROM Customer_New WHERE 1 = CASE WHEN @Clients_Title != " " THEN Clients_Title AND WHEN @Address_Current != " " THEN Address_Current AND WHEN @Phone_Number != " " THEN Phone_Number AND WHEN @Mobile_Number != " " THEN Mobile_Number AND WHEN @AreaLocation != " " THEN AreaLocation END 任何人都能纠正我的案件陈述吗? 解决方法我想你只想要这个 – 不需要CASE:SELECT Cust_Id,AreaLocation FROM Customer_New WHERE (@Clients_Title = '' OR Clients_Title LIKE '%'+@Clients_Title+'%') AND (@Address_Current = '' OR Address_Current LIKE '%'+@Address_Current+'%') AND (@Phone_Number = '' OR Phone_Number LIKE '%'+@Phone_Number+'%') AND (@Mobile_Number = '' OR Mobile_Number LIKE '%'+@Mobile_Number+'%') AND (@AreaLocation = '' OR AreaLocation LIKE '%'+@AreaLocation+'%') 因为这至少非常类似于非SQL代码. (编辑:淮北站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- sql-server-2005 – 移动SQL 2000 32位数据库
- sql-server – 使用GUI恢复数据库 – 要恢复的文件错误
- SQL查询按日期范围折叠重复值
- sql-server – 如何在SQl Server 2008中选择distinct,但仅限
- sql – 在两个varchar字段上创建Unqiue不区分大小写的约束
- sql-server-2008 – SQL Server 2008 R2 100%可用性
- sql – 连接空表以返回所有行
- insert select与select into 的用法使用步骤
- SCO宣称已注册Unix版权 股票大幅度上涨11%
- sql-server – 唯一索引,varchar列和(空格)空格的行为
站长推荐
热点阅读