2 cyang421 cyang421 于 2018.05.16 23:22 提问

如何根据条件查询数据库中的记录 10C

想通过条件查询mysql数据库中的参数,例如想查询字段参数1大于100的记录,目前做法是先通过读取检索条件:字符串( ”参数1>100”),然后从字符串中分别将”参数1”,”大于号,100分别取出,然后再调用sql语句进行检索,目前感觉这个方法过于繁琐,求问有没有更好的解决方案,另检索条件还可能是两个参的数&&运算

9个回答

caozhy
caozhy   Ds   Rxr 2018.05.16 23:45

可以用存储过程,或者使用带参sql,还可以动态执行sql

看这个例子:http://www.jquerycn.cn/a_15160

qw2002q
qw2002q   2018.05.17 00:06

SELECT * FROM tablename
WHERE parameters > 100

qq_21850351
qq_21850351   2018.05.17 08:46

用动态SQL实现,
逐个框判断是否有写,如有则tsql=tsql+" and [字段]='" + TextBox.Text + "' '
【Sql Server】使用触发器把一个表中满足条件的数据部分字段插入到另一个表中

qq_31290353
qq_31290353   2018.05.17 09:28

不太确定是否为你想要的,之前我们做到使用mybatis调用mysql执行查询时,可以使用$方式传参,也就是说例如你现在的查询条件 a>100,这个作为一个参数
然后再mybatis的xml中直接拼sql:例如 select * from tablename where $subsql$

a718089112
a718089112   2018.05.17 09:47

你可以单独封装一个模块处理参数这个事情啊,方法写好,每次执行sql时调用一次就行了,不用每次都写。
这类数据一般可以放到二级缓存里面,不用每次都查库的。

u013915547
u013915547   2018.05.17 10:03

可以取了解下占位符,不太明白你为什么要提取字符串

qq_40081270
qq_40081270   2018.05.17 10:13

string sql = select * from 表 where 1=1

if(条件1!=null)
sql += " and 条件1"
if(条件2!=null)
sql+= " and 条件2"
......

luwl56
luwl56   2018.05.17 13:43

把你的参数封装成一个对象,通过实例化不同的对象,来拼装sql

qq_35907226
qq_35907226   2018.05.24 15:11

select sum(表名.money) sum_Money from 表名 where sum_Money >100

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!