用sql查询数据库的字段频率

如题,用sql如何得到匹配字符的次数而就得该字符在数据库中出现的频率?不好意思例如获取一个textfield里面的字符然后与数据库入面的name与address里的数据匹... 如题,用sql如何得到匹配字符的次数而就得该字符在数据库中出现的频率?
不好意思
例如 获取一个textfield里面的字符然后与数据库入面的name与address里的数据匹配
在匹配的时候sql应该怎样写

很感谢2楼的回答,但请看清楚问题,我需要的是字段的频率,是数字类型的结果
展开
 我来答
浩然之言
2009-12-27 · TA获得超过355个赞
知道小有建树答主
回答量:209
采纳率:0%
帮助的人:137万
展开全部
我猜想你是带参数的查询数据库里的数据吧!
protected void Page_Load(object sender, EventArgs e)
{

}
protected void Button1_Click(object sender, EventArgs e)
{
string stt = "select manager_name,manager_pwd,department_id from manager where manager_name='" + TextBox1.Text + "' and manager_pwd='" + TextBox2.Text + "' and department_id='"+DropDownList1.SelectedValue+"'";
SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["aaaaaaConnectionString"].ToString());
conn.Open();
SqlCommand cmd = new SqlCommand(stt,conn);
SqlDataReader sdr = cmd.ExecuteReader();

if (sdr.Read())
{
Response.Redirect("default.aspx");
}
else
{
Response.Redirect("login.aspx");
}
sdr.Close();
conn.Close();
}

以上是一个登陆代码,或许可以给你参考一下!

public SqlDataReader GetUserLoginByProc(string sUserName, string sPassword)
{
SqlConnection con = DB.createDB();
SqlCommand cmd = new SqlCommand("Pr_GetUserLogin",con);
//设置为执行存储过程
cmd.CommandType = CommandType.StoredProcedure;
//添加存储过程参数
SqlParameter pUserName = new SqlParameter("@UserName",SqlDbType.VarChar,50);
pUserName.Value = sUserName.text;
cmd.Parameters.Add(pUserName);
SqlParameter pPassword = new SqlParameter("@Password",SqlDbType.VarChar,100);
pPassword.Value = sPassword.text;
cmd.Parameters.Add(pPassword);
SqlDataReader dr = null;
try
{
con.Open();
dr = cmd.ExecuteReader(CommandBehavior.CloseConnection);
}
catch (SqlException ex)
{
throw new Exception(ex.Message,ex);
}
return dr;
}
存储过程如下:
create proc select_user_login
@userName varchar(50),//可以为输出参数,后加 output
@userPwd varchar(100)
as
select userName,userPassword
from arc_user
where userName=@userName and userPassword=@userPwd
go
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
化树历幻露
2020-08-14 · TA获得超过1141个赞
知道小有建树答主
回答量:1821
采纳率:100%
帮助的人:8.4万
展开全部
如果是在mysql数据库中,可以用到information_schema
数据库。
查询特定字段的表可以用如下语句:
select
table_name
from
information_schema.columns
where
column_name='特定字段名';
如果再指定数据库
可以在where
子句改为:where
column_name='特定字段名'
and
table_schema='特定数据库名';
如果是在sqlserver数据库中,则用到sysobjects和syscolumns
这两个数据库,如下:
select
name
from
sysobjects
where
id
in(select
id
from
syscolumns
where
name='特定字段名')
其他数据库。。。我还没学。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ashare1984
2009-12-27
知道答主
回答量:36
采纳率:0%
帮助的人:18.6万
展开全部
select count(*) from tabletest where (name like '%xxx%' or address like '%xxx%')

建议count不要用*,最好用一个自增长的且int型的字段,这样能提高效率

希望能帮到你:)
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
402407
2009-12-27 · TA获得超过771个赞
知道小有建树答主
回答量:726
采纳率:50%
帮助的人:908万
展开全部
select count(*) from tabletest where name like '%xxx%' or address like '%xxx%'

如果xxx 是从数据库表中查找出来的可以内嵌
使用存储过程 理解可能简单些
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
yaj52125
2009-12-27 · TA获得超过404个赞
知道小有建树答主
回答量:450
采纳率:100%
帮助的人:496万
展开全部
先比如:……
例如:……
完整题目
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式