Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/58.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
mysql ExtractValue()函数中使用[$@var name]的含义 @xml='XY'; 设置@i=1、@j=2; 选择extractvalue(@xml,//b[$@i]');_Mysql - Fatal编程技术网

mysql ExtractValue()函数中使用[$@var name]的含义 @xml='XY'; 设置@i=1、@j=2; 选择extractvalue(@xml,//b[$@i]');

mysql ExtractValue()函数中使用[$@var name]的含义 @xml='XY'; 设置@i=1、@j=2; 选择extractvalue(@xml,//b[$@i]');,mysql,Mysql,我想知道函数中使用的$@的含义。$@代表用户变量。看 首先,在你发布的代码中@xml='XY'不是有效的XML 解释一下,//b[$@i]是一个XPATH查询。在这种情况下,$@i是一种变量插值。文档中的一个示例 @xml= '<a><b>X</b><b>Y</b></a>'; set @i=1,@j=2; select extractvalue(@xml,'//b[$@i]'); SET@xml='XY'; 设置@i=

我想知道函数中使用的
$@
的含义。

$@
代表用户变量。看

首先,在你发布的代码中
@xml='XY'不是有效的XML

解释一下,
//b[$@i]
是一个
XPATH
查询。在这种情况下,
$@i
是一种变量插值。文档中的一个示例

@xml= '<a><b>X</b><b>Y</b></a>'; 
set @i=1,@j=2;
select extractvalue(@xml,'//b[$@i]');
SET@xml='XY';
设置@i=1;
然后执行
选择ExtractValue(@xml,//b[$@i]”)
返回
X
sine

选择第一个([1]索引)标记元素
b
。所以这里,
'//b[$@i]
只是说
'//b[1]

SET @xml = '<a><b>X</b><b>Y</b></a>';
SET @i =1;