由于solr里存储的是格林威治时间(GMT),所以直接从库里导入数据进solr会少8小时,目前想到一个办法就是我默认给他加8小时,再减8小时不就正好是正常时间了么?所以实现如下:
查询sql的时候 (PST太平洋标准时间 -08:00)
new_time(a.updatedtime,'PST','GMT')
SELECT a.videoid as id,a.videoname,a.videobrief,a.keywords,new_time(a.updatedtime,'PST','GMT') as updatedtime,new_time(a.inputedtime,'PST','GMT') as inputedtime
以上仅个人看法
下面的配置可以自动添加当前时间到timestamp字段,这是按照格林威日时间记录的,我们在东8区
<field name=”timestamp” type=”date” indexed=”true” stored=”true” default=”NOW” multiValued=”false”/>
下面这样配置记录的就是北京时间
<field name=”timestamp” type=”date” indexed=”true” stored=”true” default=”NOW+8HOUR” multiValued=”false”/>
顺便说一下,用tdate可以加快范围查找速度
<field name=”timestamp” type=”tdate” indexed=”true” stored=”true” default=”NOW+8HOUR” multiValued=”false”/>