当前位置:编程学习 > C#/ASP.NET >>

c#SQL编程问题

现有一串未知字母串,比如说ABCD…… 如何能实现把分别以A,B,C,D以及AB,AC,AD,BC,BD,CD等开头的数据列搜索出来?数据库表中有一列数据是以字母开头的数据列

补充:注意是未知字母串

追问:“先解决了这个问题在就是写SQL语句了

你可以动态把这些字母组合拼接在SQL语句当中,然后去查询就OK了。”

这个怎么实现啊

答案:你首先要做的事情你怎么把用户输入的字符串,分割成字母组合,先解决了这个问题在就是写SQL语句了

你可以动态把这些字母组合拼接在SQL语句当中,然后去查询就OK了。

select * from 表名 where 列名like '%A%' or 列名 like '%B%' or 列名 like '%C%' or 列名 like '%D%'

涉及两个问题

1 筛选以字母开头的列

2 筛选依据:以该列分组

select * from 表 where (substring(列名,1,1)>'a' and substring(列名,1,1)<'z') or (substring(列名,1,1)>'A' and substring(列名,1,1)<'Z') GROUP BY 列名

string inputStr = "demo中文"

string sqlStr = "select * from 表名";

for(int i=0;i<inputStr.Length;i++)

{

if( i=0) sqlStr += " where "

else sqlStr += " or "

sqlStr += string.Format("列名 like '{0}%'",inputStr[i].ToString());

}

如若代码有错自行调试

button按钮事件里添加

string str=文本框中输入的字母。(textbox.text)

string sql查询语句=“select * from 表 where 列名 like ‘%“+str+”%’”;

DataSet 数据集存储查出来的数据。

把通过数据集控制吧搜索到的数据输出出来

select * from 表名 where 列名 like '%A%'如果是未知的字符串在查询的时候就用拼sql的方法,string.format()方法

上一个:C#socket缂栫▼渚嬪瓙 - 宸茶В鍐?- 鎼滄悳闂棶
下一个:c#编程 5*4的二维数组转化为4*5的二维数组

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,