检查 varchar 是否为数字 (T-SQL)

2024-01-09

有没有一种简单的方法可以判断 varchar 是否是数字?

例子:

abc123 --> 没有号码

123 --> 是的,它是一个数字


ISNUMERIC 不会这样做 - 它告诉您该字符串可以转换为any数字类型,这几乎总是一条毫无意义的信息。例如,根据 ISNUMERIC,以下所有内容都是数字:

英镑, 美元, 0d0

如果您想检查数字且仅检查数字,则需要使用负 LIKE 表达式:

not Value like '%[^0-9]%'
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

检查 varchar 是否为数字 (T-SQL) 的相关文章

  • 列的 SQL MAX(包括其主键)

    Short 从下面的 sql select 中 我获取了 cart id 和该购物车中最高价值商品的值 SELECT CartItems cart id MAX ItemValues value FROM CartItems INNER J
  • 如何更新 SQL Server 中 ntext 列中的 XML 字符串?

    有一个包含 2 列的 SQL 表 ID int 和值 ntext 值行中包含各种 xml 字符串 ID Value 1
  • 每行中非空列的计数

    我有一个包含 4 列的表 在第 5 列中我想存储前 4 列中有多少个非空列的计数 例如 其中 X 是任意值 Column1 Column2 Column3 Column4 Count X X NULL X 3 NULL NULL X X 2
  • 如何连接子查询的第一行?

    我有一个发票表和一个按键关联的相关数据的子表 特别是 对于每张发票 我只对子表中的第一个相关行感兴趣 鉴于我想要每个发票键都有一个相关行 我该如何实现这一点 Select i Invoice Number c Carrier Name Fr
  • 对于返回超过1个值的SQL select,当Id为GUID时它们如何排序?

    我想知道 SQL Server 如何对查询返回的数据进行排序 并且各个表的 Id 列都是 uniqueidentifier 类型 我在创建所有 GUID 时使用 NHibernate GuidComb 并执行以下操作 Sheet sheet
  • T-SQL 是否可以通过单个快速操作进行更新/插入

    假设我有一个表 我想插入一行 新行的键可能已经与表中现有行的键匹配 在这种情况下我想更新现有行 或者 它可能不存在于表中 在这种情况下应插入新行 执行此类操作最有效的方法是什么 我想先做一个SELECT 也许与EXISTS 查看是否存在特定
  • 分组和切换列和行

    我不知道这是否会被正式称为枢轴 但我想要的结果是这样的 Alex Charley Liza 213 345 1 23 111 5 42 52 2 323 5 23 1 324 5 我的输入数据采用这种形式 Apt Name
  • 计算2个日期之间每个日期的记录数

    我必须创建一个查询来返回多轴图表的结果 我需要计算为 2 个日期之间的每个日期创建的 ID 数量 我试过这个 DECLARE StartDate datetime2 7 11 1 2020 EndDate datetime2 7 2 22
  • 重用 t-sql 游标的起始位置?

    我正在开发一个在临时表上使用游标的存储过程 我已经阅读了一些关于为什么不需要游标的内容 但在这种情况下我相信我仍然需要使用游标 在我的过程中 我需要遍历表的行两次 声明游标后 已经单步执行临时表并关闭游标 重新打开时游标的位置是否仍保留在表
  • SQL Server:当列为 NTEXT 时 IN('asd') 不起作用

    我该如何解决这个问题 where someNtext IN asd asd1 给出错误 消息 402 第 16 层 状态 1 第 XXXXX 行数据类型 ntext 和 varchar 在等于运算符中不兼容 An INlist 只是 OR
  • 如果存在多个相同的 ID,则使用 where 子句

    我有下表 ID source Name Age 1 SQL John 18 2 SAP Mike 21 2 SQL Mike 20 3 SAP Jill 25 我希望每个ID都有一条记录 这背后的想法是 如果 ID 仅出现一次 无论来源如何
  • T-SQL参数嗅探重新编译计划

    我有 SQL 命令 exec sp executesql N SELECT TOP 10 FROM mytableView WHERE Name LIKE Value0 ORDER BY Id DESC N Value0 varchar 5
  • 如何从使用 exec() 的存储过程创建复杂类型?

    我想通过动态构造并执行的查询创建一个复杂类型 以便在实体管理器中使用exec 是否可以 既然我正在写一个过滤器 如果不可能的话你会做什么 另外 我正在使用 linq 进行评估 但过滤器需要许多表及其寄存器 因此效率是一个问题 谢谢 是的 您
  • 如何只获取 getdate() 的日期部分? [复制]

    这个问题在这里已经有答案了 我有一个包含 CreationDate 字段的 SQL 表 I have getdate 在计算列规格公式中 我想知道如何获取日期部分 即 2012 08 24 而不是 2012 08 24 10 45 17 7
  • 从多行中获取/选择值到sql server中的1行中

    我有一个表格 每列都有一些图像 Acd unq id Emp unq id Acd BImg1 Acd BImg2 Acd RImg1 Acd RImp2 Acd RImg3 Acd Active 1 1745 BinaryImg Bina
  • TSQL - 执行CLR权限

    我从 CLR net Assembly 获得了一个 sql 过程 该过程在执行时返回错误 Msg 6522 Level 16 State 1 Procedure sp HelloWorld Line 0 A NET Framework er
  • 将子查询的结果插入表中并带有常量

    相关表格的概要如下 我有一个表 我们称之为联接 它有两列 都是其他表的外键 我们将这两列称为 userid 和buildingid 因此 join 看起来像 join userid buildingid 我基本上需要在这个表中插入一堆行 通
  • 时间分组的 TSQL 滚动平均值

    这是以下内容的后续内容 TSQL 按 N 秒分组 https stackoverflow com questions 5513176 tsql group by n seconds 我得到了我想要的东西 但没有要求正确的东西 如何获得 1
  • 如何在 SQL Server 中什么都不做[重复]

    这个问题在这里已经有答案了 可能的重复 T SQL 中的空语句 https stackoverflow com questions 3234871 empty statement in t sql 我怎样才能让它在 SQL Server 中
  • 从存储过程中的动态 SQL 获取结果

    我正在编写一个存储过程 需要在过程中动态构造 SQL 语句以引用传入的表名称 我需要让这个 SQL 语句返回一个结果 然后我可以在整个过程的其余部分中使用该结果 我尝试过使用临时表和所有内容 但我不断收到一条消息 提示我需要声明变量等 例如

随机推荐