日期:2014-05-16  浏览次数:20825 次

紧急求助 oracle到mysql转换语句问题
select count(1) from tbweblog 
  where userid=1 and to_char(sysdate,'yyyy-mm-dd')=to_char(logintime,'yyyy-mm-dd');

tbweblog 是表名,logintime是表中的一个字段类型

我不明白 to_char(sysdate,'yyyy-mm-dd')=to_char(logintime,'yyyy-mm-dd');是什么意思 是判断还是赋值??

to_char(logintime,'yyyy-mm-dd')返回的是多条记录吧 ,to_char(sysdate,'yyyy-mm-dd')只返回一条记录

怎么理解 ??
还有这是oracle的语法规范 我要转换成mysql的,所以麻烦您们给我编一条mysql语句 

这是我做的 ,可返回来的记录数和原来的oracle语句不对着 
select count(1) from tbweblog where userid=1 and

curdate()=date_format(logintime,'%Y-%m-%d');

date_format(logintime,'%Y-%m-%d')就是这句的错,难道是to_char(logintime,'yyyy-mm-dd');转换成mysql date_format(logintime,'%Y-%m-%d')不对吗??





------解决方案--------------------
SQL code

--此处的作用是判断
--这句话的意思是表tbweblog中userid为1,且logintime为当天的记录数有多少条,即当天登录人的数量统计
select count(1) from tbweblog  
  where userid=1 and to_char(sysdate,'yyyy-mm-dd')=to_char(logintime,'yyyy-mm-dd');