PostgreSQL データベースで 3 つの列のデータを 1 つの列に連結するために使用されるコマンドを教えてください。
例えば
列が
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
PostgreSQL データベースで 3 つの列のデータを 1 つの列に連結するために使用されるコマンドを教えてください。
例えば
列が
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
連結演算子を使用するだけ||
です: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 |
開始列自体を変更する場合は、開始列を最初に文字列型にする必要があります。次に、次のようにします: 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