SQL Concat和merge值
如何使其正确,这有什么问题SQL Concat和merge值,sql,Sql,如何使其正确,这有什么问题 SELECT Name, Surname, CONCAT(NAME + ' '+ SURNAME) 'name and surname' FROM Worker WHERE Born = '1988'; 或 连接的标准SQL运算符是|,因此您需要: SELECT Name, Surname, (NAME || ' ' || SURNAME) as full_name FROM Worker WHERE Born = '1988'; 许多数据库还支持CONCAT()
SELECT Name, Surname, CONCAT(NAME + ' '+ SURNAME) 'name and surname'
FROM Worker
WHERE Born = '1988';
或
连接的标准SQL运算符是
|
,因此您需要:
SELECT Name, Surname, (NAME || ' ' || SURNAME) as full_name
FROM Worker
WHERE Born = '1988';
许多数据库还支持
CONCAT()
函数,但从逻辑上讲,您至少需要两个参数。SQL Server使用+
进行字符串连接,但这种情况并不普遍。您的语法在以下两个查询中出错:
SELECT Name, Surname, CONCAT(NAME, ' ', SURNAME) "name and surname"
FROM Worker
WHERE Born = '1988';
或
如果您使用的是Microsoft SQL Server,请记住常规的+
运算符和concat()
函数之间实际上没有什么区别
concat()
将隐式地将任何参数转换为字符串,而+
将在混合使用字符串和其他类型时抛出错误concat()
将始终返回一个notnull
字符串,即使所有参数都为null<代码>+将在任何列为null
时返回null
请编辑并添加一个标记,指定您正在使用的特定数据库平台以及您遇到的任何错误消息。根据标记(用于ANSI SQL),这些标记都不正确。我猜,在这两个标记之间,可以选择名称、姓氏、名称+''+姓氏作为“姓名和姓氏”,来自出生地为'1988'的工人;那很有效,谢谢
SELECT Name, Surname, CONCAT(NAME, ' ', SURNAME) "name and surname"
FROM Worker
WHERE Born = '1988';
SELECT Name, Surname, NAME + ' '+ SURNAME AS "name and surname"
FROM Worker
WHERE Born = '1988';