3
  SELECT depreciate.id, depreciate.item_id, depreciate.batch_code,
         new_item.description, depreciate.life_time, depreciate.scrap_value,
         depreciate.dep_type, item.po_number, item.purchase_value,
         item.current_value, item.purchase_date, depreciate.annual_depreciation,
         depreciate.depreciation_rate, depreciate.total_depreciate,
         depreciate.location, depreciate.dis_id 
    FROM depreciate, item, new_item 
   WHERE depreciate.item_id=item.item_id
     AND depreciate.item_id=new_item.id
     AND new_item.data_mining=1
     AND DATE_FORMAT('item.purchase_date', '%m %d') LIKE '%09-18%'

请问有人能告诉我这段代码的错误吗?我是新手。

4

2 回答 2

3

尝试改变

AND DATE_FORMAT('item.purchase_date', '%m %d') LIKE '%09-18%'

HAVING DATE_FORMAT(`item`.`purchase_date`, '%m %d') LIKE '%09-18%'
于 2012-09-18T07:44:21.530 回答
1

'将列名传递给DATE_FORMAT函数时不要使用。

尝试:

... AND DATE_FORMAT(item.purchase_date, '%m %d') LIKE '%09-18%'
于 2012-09-18T07:43:49.457 回答