sql 如何在查询的数据中加%号

sql 如何在查询的数据中加%号,第1张

题主的意思应该是在查询结果为int型数据后面,加上%号,比如查询及格率的时候。

提供一种方法,可以用cast函数将int型数据转换为varchar型,然后再加上%就OK了。

模板是:cast(int型数据  as varchar)+ '%'

举个例子:

比如我想查询数据库的及格率(按照百分比输出):

CAST(round(100*sum(case when c.cname='数据库' and s.score>=60 then 1 else 0 end)/SUM(case when c.cname='数据库' then 1 else 0 end),0) as varchar) +'%' as 及格率

表可能存储含百分号 (%) 的值,若要搜索作为字符而不是通配符的百分号,必须提供 ESCAPE 关键字和转义符, WHERE XX LIKE '%10!%%' ESCAPE '!'

SQL Server数据库,在like语句中,默认没有转义字符的,故你这里的like语句中的字符串只要一个反斜杠就够了:

select * from table where name like '%D\F%'

而如果要使用转义字符,则用escape来指定,例如:

select * from table where name like '%D\\F%' escape '\'


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9419362.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-28
下一篇 2023-04-28

发表评论

登录后才能评论

评论列表(0条)

保存