一句sql查询语句,在PHP语言中,请修改错误

select*fromfreeUserTaskwheretime()-`lastOnline`<=60and`taskState`=0and`taskNum`-`exec... select * from freeUserTask where time() - `lastOnline` <=60 and `taskState`=0 and `taskNum` - `executeNum` >=0
以上为错误语句,无法执行,请帮忙修改

必须条件:
现行时间戳 time() - bigint lastOnline <=60 且 bigint taskState=0 且 int taskNum - int executeNum >=0

以此方法查询到的数据,我要取出id ,以便取完数据后更新一下标志,请一并指教,用PHP,现在的想法是取出ID加入数组,循环,通过数组成员ID更新已经提取的记录,您有更好的方法吗?
$conn = mysql_connect($mysql_server_name,$mysql_username,$mysql_password); //连接数据库
mysql_query("set names 'utf8'"); //数据库输出编码
mysql_select_db($mysql_database); //打开数据库
$times = time();
$sql = "select * from freeUserTask where $times - `lastOnline` <=60 and `taskState`=0 and `taskNum` - `executeNum` >=0";
echo $sql;
$result = mysql_query($sql);

while($row = mysql_fetch_array($result))
{
echo $row['taskStr']."<br>";
}
mysql_close(); //关闭MySQL连接
展开
 我来答
xiaobaihu6
2015-03-31
知道答主
回答量:8
采纳率:0%
帮助的人:4.4万
展开全部
sql语句中time()函数赋给一个变量先
$t = time();
$sql = "select * from users where $t - `lastOnline` < 60";
更多追问追答
追问
是的,我已经改了,但是还是不行,我生成一个sql语句,你看下对不对
select * from freeUserTask where 1427791522 - `lastOnline` =0

但是没有执行,我在后面输出字段,没有反应
追答
select * from freeUserTask where 1427791522 - unix_timestamp(`lastOnline`) =0 你试下这个 mysql时间相减需要把时间转换下
鬼谷子教主
2015-03-31 · TA获得超过2496个赞
知道大有可为答主
回答量:1996
采纳率:88%
帮助的人:575万
展开全部
具体报什么错?
追问
不会输出错误信息,只知道没有执行
请看补充
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式