gpt4 book ai didi

mysql - SQL Management Studio 2008 中的修剪

转载 作者:行者123 更新时间:2023-11-29 14:59:34 24 4
gpt4 key购买 nike

我正在尝试从表格中删除一些信息。该列有一个数字,然后有一个单词(例如 5 个苹果)。我只需要这个数字,这样我就可以对苹果的总数进行求和。我无法使用 count,因为我需要按值(例如,一个 5 个苹果,另一个 3 个苹果)计算,而 count 只会返回有 2 个条目,而不是提取 5 和 3。

我尝试过使用 SUM,但它也不起作用。

任何人都可以帮助(或向我指出教程)来解释如何从列值中修剪/提取信息吗?我一直在寻找并且只能找到如何修剪空格(如果我也可以修剪空格之后的所有内容,那就太好了,然后我就可以在数字之后修剪掉)

最佳答案

您可以使用patindex搜索第一个非数字,然后使用substring仅获取字符串的数字部分:

declare @fruit table (id int identity, description varchar(50))
insert @fruit (description) select '3 apples'
union all select '10 apples'
union all select '12 apples'

select sum(cast(substring(description, 1, FirstNonDigit) as int))
from (
select patindex('%[^0-9]%', description) FirstNonDigit
, description
from @fruit
) as SubQuery
where FirstNonDigit > 0

这将打印 25

话虽如此,一个好的表格设计会将数字和描述放在两个不同的列中。

关于mysql - SQL Management Studio 2008 中的修剪,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3610536/

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