我的查询提供以下结果:
从表中选择年、月、日
year month day
---- ----- ---
1999 10 9
2000 11 14
2003 6 4
2007 9 14
2008 9 30
1999 3 8
1999 5 27
1999 10 19
我想让我的结果看起来像这样:
date
19991009
20001114
20030604
20070914
20080930
19990308
19990527
19991019
我的答案更多地是从MS sql server的角度来看的,因为我不知道你在使用哪个rdbms:
select cast(year as varchar(10)) + right('00' +cast(month as varchar(10)),2) + right('00' +cast(day as varchar(10)),2)
from table
这将适用于
SELECT CAST(year AS varchar) + RIGHT('0' + CAST(month AS varchar),2) + RIGHT('0'+ CAST(day AS varchar),2)
FROM Table
如果数据已经是字符串,则可以使用
SELECT year +
RIGHT('00'+ month, 2) +
RIGHT('00'+ day, 2)
对于像这样的整数
SELECT
CAST(year AS VARCHAR(4))+
RIGHT('00'+ CAST(month AS VARCHAR(2)),2) +
RIGHT('00'+ CAST(day AS VARCHAR(2)),2)
FROM YourTable
对于整数,这也可以工作
SELECT
CAST(year AS VARCHAR(4))+
RIGHT(100 + month, 2) +
RIGHT(100 + day, 2)
FROM YourTable