有谁能告诉我哪个命令用于将三列数据连接到PostgreSQL数据库中的一列?
e.g。
如果列是
begin | Month | Year
12 | 1 | 1988
13 | 3 | 1900
14 | 4 | 2000
15 | 5 | 2012
结果如
Begin
12-1-1988
13-3-1900
14-4-2000
15-5-2012
答案 0 :(得分:9)
只需使用连接运算符||
:http://www.sqlfiddle.com/#!1/d66bb/2
select begin || '-' || month || '-' || year as begin
from t;
输出:
| BEGIN |
-------------
| 12-1-1988 |
| 13-3-1900 |
| 14-4-2000 |
| 15-5-2012 |
如果要更改begin列本身,begin column必须先是字符串类型,然后执行以下操作:http://www.sqlfiddle.com/#!1/13210/2
update t set begin = begin || '-' || month || '-' || year ;
输出:
| BEGIN |
-------------
| 12-1-1988 |
| 13-3-1900 |
| 14-4-2000 |
| 15-5-2012 |
<强>更新强>
关于这个:
but m not getting null value column date
使用此:
select (begin || '-' || month || '-' || year)::date as begin
from t
答案 1 :(得分:2)
答案 2 :(得分:0)
这是一篇很老的帖子,但我偶然发现了它。创建日期数据类型没有意义吗?您可以使用以下方式执行此操作:
ServletContext servletContext =request.getSession().getServletContext().getContext("contextPath")
servletContext.getAttribute("user");
日期似乎比字符串更有用(你甚至可以使用select make_date(year, month, begin)
来格式化它。)