在SQL中concat(col1,col2)x的作用是什么?

时间:2016-03-30 10:04:32

标签: sql

我正在阅读有关SQL注入的文档,并且有一个我不明白的奇怪声明:

concat(col1,col2)x

x有什么用?

3 个答案:

答案 0 :(得分:3)

  

x的用途是什么?

alias

CREATE TABLE tab(col1 VARCHAR(100), col2 VARCHAR(100));
INSERT INTO tab(col1, col2) VALUES ('a','b');

查询:

SELECT concat(col1,col2)x
FROM tab

相同
SELECT concat(col1,col2) AS x
FROM tab;

LiveDemo

输出:

╔════╗
║ x  ║
╠════╣
║ ab ║
╚════╝

答案 1 :(得分:0)

concat - 返回一个字符串,该字符串是连接两个或多个字符串值的结果。

混淆是关于x。 x是连接的单个名称,因此您可以访问它。您也可以在{。

之前放置AS

<强>查询:

SELECT CONCAT ( 'Happy ', 'Birthday ', 11, '/', '25' ) AS Result;

<强>输出:

  

生日快乐11/25

答案 2 :(得分:0)

X是别名

对于Sql server 2012

Select concat('Abc',null,'def') as X  

O / P

 X
------
Abcdef
传统方式

select 'abc'+null+'xyz' as X

O / P

 X
------
null

所以基本上 concate 函数在字符串连接期间避免使用null值,而传统方法不允许将字符串与null连接。