select time=convert(varchar,time,112)
,[user_id],question_id,answer_id
,number=count(*)
from 表A
group by convert(varchar,time,112)
,[user_id],question_id,answer_id
,[user_id],question_id,answer_id
,number=count(*)
from 表A
group by convert(varchar,time,112)
,[user_id],question_id,answer_id
from tb group by time,user_id,question_id,answer_id
select [time]=convert(varchar(10),[time],112),user_id,question_id,answer_id, number(*)
from tb group by convert(varchar(10),[time],112),user_id,question_id,answer_id
CONVERT在INFORMIX好像不支持.
我用的是INFORMIX数据库,时间转换应该是用函数to_char(_time,'%Y%m%d'),但我在这个SQL语句中用这个函数依旧报语法错误,但我直接用select to_char(time,'%Y%m%d') from tb 就没问题..
from tb group by user_id,question_id,answer_id没有TIME就可以
但一加上时间的分组就报语法错误
只能写成group by 1 (如果to_char(time,'%Y%m%d')是select里的第一项)
而不能写成 group by to_char(time,'%Y%m%d')
再次感谢大家的帮助!