样本数据
yearmon
Jul-2017
Aug-2017
Sep-2017
Jan-2018
Jul-2018
我要在yearmon列中添加“ 15”。
我尝试使用concat函数,但是它不起作用。
预期
yearmon
15-Jul-2017
15-Aug-2017
15-Sep-2017
15-Jan-2018
15-Jul-2018
答案 0 :(得分:3)
SQL标准具有一个用于连接的运算符,该运算符易于理解且易于键入。 您只使用||运算符,就像您将+用于整数一样:
SELECT '15-' || yearmon AS full_date FROM table;
concat 函数正在调用||内部操作员。 concat 函数将被调用如下。
SELECT concat ('15-', yearmon) AS full_date FROM table;
SELECT concat_ws ('-', '15', yearmon) AS full_date FROM table;
答案 1 :(得分:1)
我非常喜欢将日期存储为日期而不是字符串。因此,我建议:
select to_date('Jul-2017', 'MON-YYYY') + interval '14 day')
这将产生具有适当数据类型的值。