查询到24日期格式12日期格式转换成蜂巢
我已经演示表 我想创建视图,这是我的查询查询到24日期格式12日期格式转换成蜂巢
create view Demo_View as
select sms_sent_identifier,year(sms_sent_dt) Year1,
case month(sms_sent_dt)
when 1 then 'Q1'
when 2 then 'Q1'
when 3 then 'Q1'
when 4 then 'Q2'
when 5 then 'Q2'
when 6 then 'Q2'
when 7 then 'Q3'
when 8 then 'Q3'
when 9 then 'Q3'
when 10 then 'Q4'
when 11 then 'Q4'
when 12 then 'Q4'
end Quarter1,
Month(sms_sent_dt) Month1,
day(sms_sent_dt) Date1,
***hour(sms_sent_dt) Hour1,***
minute(sms_sent_dt) Minute1
from subs_sms;
O/P它给日时为如12,13我想要12格式,即上午11点,上午12点 我应该怎么做
这可以通过使用提示a%b来以简单的方式完成。如果你除以12,你将得到12小时的价值。或者第二种方法是将日期中的格式更改为yyyy-MM-dd HH:mm:ss至yyyy-MM-dd hh:mm:ss。我给出了下面第一种和第二种方法的例子。
请尝试一下本作第一种方法:
create view Demo_View as
select sms_sent_identifier,year(sms_sent_dt) Year1,
case month(sms_sent_dt)
when 1 then 'Q1'
when 2 then 'Q1'
when 3 then 'Q1'
when 4 then 'Q2'
when 5 then 'Q2'
when 6 then 'Q2'
when 7 then 'Q3'
when 8 then 'Q3'
when 9 then 'Q3'
when 10 then 'Q4'
when 11 then 'Q4'
when 12 then 'Q4'
end Quarter1,
Month(sms_sent_dt) Month1,
day(sms_sent_dt) Date1,
(hour(sms_sent_dt)%12) Hour1,
minute(sms_sent_dt) Minute1
from subs_sms;
这是第二种方法:
hour(from_unixtime(unix_timestamp(sms_sent_dt),'yyyy-MM-dd hh:mm:ss'))
谢谢我会检查并让你知道 – Pankaj
它以12格式出现,但它不是来上午或下午 – Pankaj
上午/下午标记,您将需要'aa't o作为格式的一部分存在。例如:小时(from_unixtime(unix_timestamp(sms_sent_dt),'yyyy-MM-dd hh:mm:ss aa')) 了解更多详情,请访问:https://docs.oracle.com/javase/7/docs /api/java/text/SimpleDateFormat.html – BalaramRaju
采取看看下面的链接:http://docs.oracle.com/javase/tutorial/i18n /format/simpleDateFormat.html&https://cwiki.apache.org/confluence/display/Hive/LanguageManual+UDF#LanguageManualUDF-DateFunctions – Ambrish