gpt4 book ai didi

sql-server - 从 varchar 列中选择 max int

转载 作者:行者123 更新时间:2023-12-02 07:34:38 24 4
gpt4 key购买 nike

我正在尝试从包含数字和字符串的 varchar 列中检索最大数字。我正在使用的数据示例:

箱号
123
A5
789
B1

我需要从列中返回最大数字(本例中为 789),同时忽略 A5 和 B1 的非数字值。

我找到了使用 custom functions 的解决方案来解决这个问题,但我需要一些可以执行临时查询而不依赖自定义函数或过程的东西。

最佳答案

您需要一个组合,因为 isnumeric 对于以下情况返回 1

select isnumeric('+'),isnumeric('5d2') 

你的where子句会像这样

WHERE VALUE NOT LIKE '%[a-z]%'
AND ISNUMERIC(VALUE) = 1

create table #bla (value varchar(50))
insert #bla values('123')
insert #bla values('a5')
insert #bla values('789')
insert #bla values('b1')

SELECT MAX(CAST(value AS Int)) FROM #bla
WHERE VALUE NOT LIKE '%[a-z]%'
AND ISNUMERIC(VALUE) = 1

我在这里写过这个ISNUMERIC Trouble

关于sql-server - 从 varchar 列中选择 max int,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/512735/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com