SELECT * 
FROM `zhongliang1`.`ecs_order_info` FROM_UNIXTIME( `pay_time` , '%y %d %m' ) AS mytime
WHERE AND pay_status =1
AND agency_id = `` 
AND order_status =1
AND pay_status =1
AND '0001' = mytime
ORDER BY pay_time
LIMIT 0 , 30
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '(`pay_time`, '%y %d %m') as mytime WHERE and pay_status=1 and agency_id=`` and o' at line 1

解决方案 »

  1.   

    #1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '(`pay_time`, '%y %d %m') as mytime WHERE and pay_status=1 and agency_id=`` and o' at line 1
      

  2.   

    #1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '(`pay_time`, '%y %d %m') as mytime WHERE and pay_status=1 and agency_id=`` and o' at line 1
      

  3.   

    SELECT * FROM `zhongliang1`.`ecs_order_info`,
    (SELECT FROM_UNIXTIME(`pay_time`,'%y-%d-%m') AS mytime) A
    WHERE pay_status =1 AND agency_id ='' AND order_status =1 AND pay_status =1 AND mytime='0001'
    ORDER BY A.pay_time
    LIMIT 0 , 30
      

  4.   

    select * from (
    SELECT *,FROM_UNIXTIME( `pay_time` , '%y %d %m' ) AS mytime 
    FROM zhongliang1.ecs_order_info 
    WHERE  pay_status =1
    AND agency_id = `` 
    AND order_status =1
    AND pay_status =1
    )T
    where '0001' = mytime
    ORDER BY pay_time
    LIMIT 0 , 30
      

  5.   

    or
    SELECT *,FROM_UNIXTIME( `pay_time` , '%y %d %m' ) AS mytime 
    FROM zhongliang1.ecs_order_info 
    WHERE  pay_status =1
    AND agency_id ='' 
    AND order_status =1
    AND pay_status =1
    AND '0001' = FROM_UNIXTIME( `pay_time` , '%y %d %m' )
    ORDER BY pay_time
    LIMIT 0 , 30
      

  6.   

    主要是这个地方不执行。FROM_UNIXTIME( `pay_time` , '%y %d %m' )
      

  7.   

    pay_time是表里的一个字段,这样放行不行?
      

  8.   

    执行
    SELECT FROM_UNIXTIME(`pay_time`,'%y-%d-%m')
    报错#1054 - Unknown column 'pay_time' in 'field list'
      

  9.   

    提供你的SHOW CREATE ecs_order_info 以供别人直接测试。SELECT * ,FROM_UNIXTIME( `pay_time` , '%y %d %m' ) AS mytime
    FROM `zhongliang1`.`ecs_order_info` 
    WHERE AND pay_status =1
    AND agency_id = `` 
    AND order_status =1
    AND pay_status =1
    AND '0001' = mytime
    ORDER BY pay_time
    LIMIT 0 , 30
      

  10.   

    假设pay_time为ecs_order_info 表字段
    SELECT *,FROM_UNIXTIME( `pay_time` , '%y %d %m' ) AS mytime  
    FROM zhongliang1.ecs_order_info  
    WHERE pay_status =1
    AND agency_id =''  
    AND order_status =1
    AND pay_status =1
    AND '0001' = FROM_UNIXTIME( `pay_time` , '%y %d %m' )
    ORDER BY pay_time
    LIMIT 0 , 30
      

  11.   


    语法不对啊,FROM_UNIXTIME( `pay_time` , '%y %d %m' ) AS mytime
    不能写在from tbname 后面的啊。
    写在from tbname前面的啊!
      

  12.   

    SELECT a.* , FROM_UNIXTIME( a.`pay_time` , '%y %d %m' ) AS mytime
    FROM `zhongliang1`.`ecs_order_info`  a
    WHERE  a.pay_status =1
    AND a.agency_id = `` 
    AND a.order_status =1
    AND a.pay_status =1
    AND '0001' = a.mytime
    ORDER BY a.pay_time
    LIMIT 0 , 30;
      

  13.   

    SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";CREATE TABLE IF NOT EXISTS `ecs_order_info` (
      `order_id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
      `order_sn` varchar(20) NOT NULL DEFAULT '',
      `user_id` mediumint(8) unsigned NOT NULL DEFAULT '0',
      `order_status` tinyint(1) unsigned NOT NULL DEFAULT '0',
      `shipping_status` tinyint(1) unsigned NOT NULL DEFAULT '0',
      `pay_status` tinyint(1) unsigned NOT NULL DEFAULT '0',
      `consignee` varchar(60) NOT NULL DEFAULT '',
      `country` smallint(5) unsigned NOT NULL DEFAULT '0',
      `province` smallint(5) unsigned NOT NULL DEFAULT '0',
      `city` smallint(5) unsigned NOT NULL DEFAULT '0',
      `district` smallint(5) unsigned NOT NULL DEFAULT '0',
      `address` varchar(255) NOT NULL DEFAULT '',
      `zipcode` varchar(60) NOT NULL DEFAULT '',
      `tel` varchar(60) NOT NULL DEFAULT '',
      `mobile` varchar(60) NOT NULL DEFAULT '',
      `email` varchar(60) NOT NULL DEFAULT '',
      `best_time` varchar(120) NOT NULL DEFAULT '',
      `sign_building` varchar(120) NOT NULL DEFAULT '',
      `postscript` varchar(255) NOT NULL DEFAULT '',
      `shipping_id` tinyint(3) NOT NULL DEFAULT '0',
      `shipping_name` varchar(120) NOT NULL DEFAULT '',
      `pay_id` tinyint(3) NOT NULL DEFAULT '0',
      `pay_name` varchar(120) NOT NULL DEFAULT '',
      `how_oos` varchar(120) NOT NULL DEFAULT '',
      `how_surplus` varchar(120) NOT NULL DEFAULT '',
      `pack_name` varchar(120) NOT NULL DEFAULT '',
      `card_name` varchar(120) NOT NULL DEFAULT '',
      `card_message` varchar(255) NOT NULL DEFAULT '',
      `inv_payee` varchar(120) NOT NULL DEFAULT '',
      `inv_content` varchar(120) NOT NULL DEFAULT '',
      `goods_amount` decimal(10,2) NOT NULL DEFAULT '0.00',
      `shipping_fee` decimal(10,2) NOT NULL DEFAULT '0.00',
      `insure_fee` decimal(10,2) NOT NULL DEFAULT '0.00',
      `pay_fee` decimal(10,2) NOT NULL DEFAULT '0.00',
      `pack_fee` decimal(10,2) NOT NULL DEFAULT '0.00',
      `card_fee` decimal(10,2) NOT NULL DEFAULT '0.00',
      `money_paid` decimal(10,2) NOT NULL DEFAULT '0.00',
      `surplus` decimal(10,2) NOT NULL DEFAULT '0.00',
      `integral` int(10) unsigned NOT NULL DEFAULT '0',
      `integral_money` decimal(10,2) NOT NULL DEFAULT '0.00',
      `bonus` decimal(10,2) NOT NULL DEFAULT '0.00',
      `order_amount` decimal(10,2) NOT NULL DEFAULT '0.00',
      `from_ad` smallint(5) NOT NULL DEFAULT '0',
      `referer` varchar(255) NOT NULL DEFAULT '',
      `add_time` int(10) unsigned NOT NULL DEFAULT '0',
      `confirm_time` int(10) unsigned NOT NULL DEFAULT '0',
      `pay_time` int(10) unsigned NOT NULL DEFAULT '0',
      `shipping_time` int(10) unsigned NOT NULL DEFAULT '0',
      `pack_id` tinyint(3) unsigned NOT NULL DEFAULT '0',
      `card_id` tinyint(3) unsigned NOT NULL DEFAULT '0',
      `bonus_id` mediumint(8) unsigned NOT NULL DEFAULT '0',
      `invoice_no` varchar(255) NOT NULL DEFAULT '',
      `extension_code` varchar(30) NOT NULL DEFAULT '',
      `extension_id` mediumint(8) unsigned NOT NULL DEFAULT '0',
      `to_buyer` varchar(255) NOT NULL DEFAULT '',
      `pay_note` varchar(255) NOT NULL DEFAULT '',
      `agency_id` smallint(5) unsigned NOT NULL,
      `inv_type` varchar(60) NOT NULL,
      `tax` decimal(10,2) NOT NULL,
      `is_separate` tinyint(1) NOT NULL DEFAULT '0',
      `parent_id` mediumint(8) unsigned NOT NULL DEFAULT '0',
      `discount` decimal(10,2) NOT NULL,
      PRIMARY KEY (`order_id`),
      UNIQUE KEY `order_sn` (`order_sn`),
      KEY `user_id` (`user_id`),
      KEY `order_status` (`order_status`),
      KEY `shipping_status` (`shipping_status`),
      KEY `pay_status` (`pay_status`),
      KEY `shipping_id` (`shipping_id`),
      KEY `pay_id` (`pay_id`),
      KEY `extension_code` (`extension_code`,`extension_id`),
      KEY `agency_id` (`agency_id`)
    ) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=23 ;
      

  14.   


    发这么长的create table 的 sql,楼主想干啥啊?
      

  15.   

    SELECT *,FROM_UNIXTIME( `pay_time` , '%y %d %m' ) AS mytime   
    FROM ecs_order_info   
    WHERE pay_status =1
    AND agency_id =''   
    AND order_status =1
    AND pay_status =1
    AND '0001' = FROM_UNIXTIME( `pay_time` , '%y %d %m' )
    ORDER BY pay_time
    LIMIT 0 , 30语法没有问题
      

  16.   

    改为如下,但你的语句本身另人费解。mysql> SELECT * ,FROM_UNIXTIME( `pay_time` , '%y %d %m' ) AS mytime
        -> FROM `ecs_order_info`
        -> WHERE agency_id = ''
        -> AND order_status =1
        -> AND pay_status =1
        -> AND '0001' = FROM_UNIXTIME( `pay_time` , '%y %d %m' )
        -> ORDER BY pay_time
        -> LIMIT 0 , 30
        -> ;
    Empty set (0.00 sec)mysql>
      

  17.   


    pay_time不存在啊!order by的时候出错了吧!
      

  18.   

    AND '0001' = mytimeFROM_UNIXTIME( `pay_time` , '%y %d %m' ) AS mytime 这种格式下,是永远不可以等于 '0001'的。你一楼的语句显然有过多的语法错误,建议学习一下SQL语句的基础。
    SELECT * 
    FROM `zhongliang1`.`ecs_order_info` FROM_UNIXTIME( `pay_time` , '%y %d %m' ) AS mytime    FROM 后应该是数据源,表或者集合,你这儿的这个另人无法理解
    WHERE AND pay_status =1   这儿又多出个AND,显然的语法错误
    AND agency_id = ``   这儿应该是引号吧,反引号并不是引号
    AND order_status =1
    AND pay_status =1  这个条件已经在WHERE后说明了一次了,不需要重复
    AND '0001' = mytime   一个永远为FALSE的条件
    ORDER BY pay_time
    LIMIT 0 , 30
      

  19.   

    SELECT a.* , FROM_UNIXTIME( pay_time , '%y %d %m' ) AS mytime
    FROM zhongliang1.ecs_order_info  a
    WHERE pay_status=1
    AND agency_id = ''
    AND order_status =1
    AND pay_status =1
    AND '0001' = FROM_UNIXTIME( `pay_time` , '%y %d %m' )
    ORDER BY pay_time
    LIMIT 0 , 30;搞定,执行完毕。