Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 检查字符串是否包含前导字母_Sql_Sql Server_Sql Server 2000 - Fatal编程技术网

Sql 检查字符串是否包含前导字母

Sql 检查字符串是否包含前导字母,sql,sql-server,sql-server-2000,Sql,Sql Server,Sql Server 2000,如何检查字符串是否包含前导字母?在C#中很简单,但我是用SQL实现的。有办法检查这个吗?如果是,我如何删除它 例: @MyString='A1234' 更新的字符串='1234'如果要检查,请尝试在IF…中包装子字符串 substring(@MyString,1,1) = 'A' 或者只是 declare @val varchar(10) set @val = substring(@MyString,1,1) 对于一个前导字母,您可以执行以下操作: IF NOT ISNUMERIC(SUB

如何检查字符串是否包含前导字母?在C#中很简单,但我是用SQL实现的。有办法检查这个吗?如果是,我如何删除它

例: @MyString='A1234'


更新的字符串='1234'

如果要检查,请尝试在IF…中包装子字符串

substring(@MyString,1,1) = 'A'
或者只是

declare @val varchar(10)

set @val = substring(@MyString,1,1)

对于一个前导字母,您可以执行以下操作:

IF NOT ISNUMERIC(SUBSTRING(@MyString, 1, 1))
    SET @MyString = SUBSTRING(@MyString, 2, LEN(@MyString)) 
您可以重复此操作,直到不再有字母。

使用:

UPDATE YOUR_TABLE
   SET your_column = SUBSTRING(your_column, 2, DATALENGTH(your_column))
 WHERE your_column LIKE '[A-Za-z]%'

我认为您应该将
DATALENGTH()
更改为
LEN()
:如果类型是UNICODE(并且
NVARCHAR
现在被广泛使用)
DATALENGTH()
将“加倍”长度。