在一个列中选择2列并合并它们
是否可以在一列中选择2列并合并它们?在一个列中选择2列并合并它们
例子:
select something + somethingElse as onlyOneColumn from someTable
是的,就像你一样。为什么在这里问,而不是问数据库,你会得到正确的答案。
发生什么事情是你要求一个表达。一个非常简单的表达式只是一个列名,一个更复杂的表达式可以包含forumales等。
GJ
是的,它是可能的,只要数据类型是兼容的。如果不是,请使用CONVERT()或CAST()
SELECT firstname + ' ' + lastname AS name FROM customers
是的,你可以很容易地结合起来足够的列如串联字符数据:
select col1 | col 2 as bothcols from tbl ...
或增加(例如)数字数据:
select col1 + col2 as bothcols from tbl ...
在这两种的情况下,你最终与单个列bothcols
,其中包含所述组合的数据。如果列不兼容,则可能必须强制数据类型。
是,
SELECT CONCAT(field1, field2) AS WHOLENAME FROM TABLE
WHERE ...
会导致数据集,如:
WHOLENAME
field1field2
你的语法应该工作,也许colums之间添加一个空格像
SELECT something + ' ' + somethingElse as onlyOneColumn FROM someTable
这只会在某些东西和其他东西都是字符串时才起作用。 – unicorn2 2014-01-23 16:16:24
的+
运营商应该做的伎俩就好了。请记住,如果其中一列为空或没有任何值,它会给你一个NULL
结果。相反,将+
与功能COALESCE
结合,您将被设置。
下面是一个例子:
SELECT COALESCE(column1,'') + COALESCE(column2,'') FROM table1.
对于这个例子,如果column1
是NULL
,那么column2
结果将显示出来,而不是一个简单的NULL
。
希望这会有所帮助!
(SELECT column1 as column FROM table)
UNION
(SELECT column2 as column FROM table)
如果列的一个是我所经历过的oracle会觉得“+”的总和操盘级联个数。
如:
select (id + name) as one from table 1; (id is numeric)
抛出无效数字异常
在这种情况下,你可以||连接的运算符。
select (id || name) as one from table 1;
是的,这工作正确...好的答案! – ako 2016-07-29 12:00:11
上述答案的工作对我来说但这并...
SELECT CONCAT(Cust_First, ' ', Cust_Last) AS CustName FROM customer
我希望这个答案可以帮助:
SELECT (CAST(id AS NVARCHAR)+','+name) AS COMBINED_COLUMN FROM TABLENAME;
这不是如果姓名正确的工作为我的SQLite和姓氏是字符串,但@ user1313900回答你必须用户||连接两列的两个字符串 – ako 2016-07-29 12:00:51