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
Sql CHARINDEX总是返回零_Sql_Sql Server - Fatal编程技术网

Sql CHARINDEX总是返回零

Sql CHARINDEX总是返回零,sql,sql-server,Sql,Sql Server,我是被卡住了还是这是个虫子什么的 declare @text nvarchar = 'ThisTextContainsPandOtherCharacters' select charindex(N'P',@text) 始终为零?您尚未声明字符串的长度,因此默认值为1。试试这个: declare @text nvarchar(100) = 'ThisTextContainsPandOtherCharacters'; select charindex(N'P',@text) 为变量指定一个

我是被卡住了还是这是个虫子什么的

declare @text nvarchar = 'ThisTextContainsPandOtherCharacters'
select  charindex(N'P',@text)

始终为零?

您尚未声明字符串的长度,因此默认值为1。试试这个:

declare @text nvarchar(100) = 'ThisTextContainsPandOtherCharacters';

select  charindex(N'P',@text)

为变量指定一个长度,如下所示-

declare @text nvarchar(200) = 'ThisTextContainsPandOtherCharacters'
select  charindex(N'P',@text)
在变量中使用大小

declare @text nvarchar(500) = 'ThisTextContainsPandOtherCharacters'
select  charindex('P',@text)

您应该声明字符串的长度。 请试试这个

DECLARE @text nvarchar(300) = 'ThisTextContainsPandOtherCharacters';

SELECT CHARINDEX(N'P',@text)
-您应该始终为您使用的任何
varchar
变量和参数提供长度