关于数字加字符比较大小的问题

BaoBrother 2015-08-19 08:51:35
比如电压:
10v
220v
380v
20kv
30kv
50kv

注意v与kv

假如我想查找大于200v 的内容,得出结果:
380v
20kv
30kv
50kv

怎么写?
...全文
127 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
BaoBrother 2015-08-20
  • 打赏
  • 举报
回复
受教了,谢谢两位。
Landa_Tiny_cui 2015-08-20
  • 打赏
  • 举报
回复
借用楼上数据

declare @table table
(
    val varchar(10)
)
insert into @table values('10v'),('220v'),('380v'),('20kv'),('30kv'),('50kv')
 

select 	val
from @table
where convert(int,replace(REPLACE(val,'k','000'),'v',''))>200
许晨旭 2015-08-19
  • 打赏
  • 举报
回复
declare @table table
(
	val varchar(10)
)
insert into @table values('10v'),('220v'),('380v'),('20kv'),('30kv'),('50kv')

;with cte as(
select 
	val,
	case
		when CHARINDEX('kv',val)>0 then LEFT(val,CHARINDEX('kv',val)-1)*1000
		else  LEFT(val,CHARINDEX('v',val)-1)
	end as vals
from @table
)

select val
from cte 
where vals>200
val
----------
220v
380v
20kv
30kv
50kv

(5 行受影响)

22,302

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧