gpt4 book ai didi

sql-server-2008 - SQL Server - 选择列描述中给出范围的列

转载 作者:行者123 更新时间:2023-12-04 07:06:46 26 4
gpt4 key购买 nike

ID  Description

51 SY10K40F

18 SY20K40F

12 SY30K40F

28 SY40K40F

34 SY100K40H

35 SY240K40H

36 SY300K40H

我必须只选择描述范围为 10K to 40K 的那些 ID .

注意 - Id 是主键,从描述中我们得到 10k、20k 等。

最佳答案

如果我猜对了:

WHERE 
CAST(SUBSTRING(Description,3,CHARINDEX('K',Description)-3) AS INT)
BETWEEN 10 and 40

SQL Fiddle demo

假设您对此答案发表评论,第一个位置不是固定的,因此在这种情况下您应该使用 PATINDEX() MSSQL 中的函数:
WHERE 
CAST(SUBSTRING(Description,
PATINDEX('%[0-9]%',Description),
PATINDEX('%[0-9]K%',Description)-
PATINDEX('%[0-9]%',Description)+1)
AS INT)
BETWEEN 10 and 40

SQLFiddle demo

关于sql-server-2008 - SQL Server - 选择列描述中给出范围的列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20417021/

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