【问题标题】:Filter between two dates MYSQL在两个日期之间过滤 MYSQL
【发布时间】:2014-02-25 17:55:41
【问题描述】:

我有一张激励表:

inc_id  int(11)          
inc_date    date    
inc_projectname     varchar(256)         
inc_amount  varchar(256)         
inc_developer_id    int(11)      
inc_sales_id    int(11)  
inc_developer_amt   varchar(256)    
inc_sales_amt   varchar(256)

我正在尝试编写一个 sql 查询来获取两个日期之间特定用户的条目。这样做的功能是:

 public function  get_all_incentive_by_id ($userid,$inc_from,$inc_to) {  

        //$result = DB::fetch('select * from incentive_table ORDER BY inc_date ASC;');

        $result = DB::fetch("select * from incentive_table where inc_date > '$inc_from' AND inc_date < '$inc_from' ORDER BY inc_date ASC");


        return $result;
        } 

错误:没有输出。

必填:我想要一个用户 ID 的两个日期之间的结果

【问题讨论】:

  • inc_date &lt; '$inc_to'
  • a) $inc_from$inc_to 是什么格式? b) DB 类的静态函数 fetch() 返回什么? c) 当然应该inc_date &lt; '$inc_to'?
  • 你用了两次$inc_from,我觉得应该是inc_date
  • fetch 是我的 DB 类函数一个扩展的 PDO 类。
  • 之间怎么写? $result = DB::fetch("select * from evidence_table WHERE (inc_date BETWEEN '$inc_from' AND '$inc_to')");它似乎没问题。但是我如何将用户 ID 传递给它我想要一个特定的用户数据。

标签: php mysql


【解决方案1】:
$result = DB::fetch("SELECT * FROM incentive_table WHERE inc_date BETWEEN '$inc_from' AND '$inc_to' AND inc_sales_id ='$userid'" ORDER BY inc_date ASC");

【讨论】:

  • 现在如果你发现错误指出它发生的位置,我仍然会得到纠正
  • 还需要按用户 ID 包含过滤器
  • $result = DB::fetch("select * from evidence_table WHERE (inc_date BETWEEN '$inc_from' AND '$inc_to') AND inc_sales_id ='$userid'");
  • 它仍然是FULL OF ERRORS,如果你不知道sql,你为什么要回答,尤其是他需要的所有答案都在cmets中。仅供参考:这是错误的 inc_date BETWEEN '$inc_from' AND inc_date
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-04-10
  • 2021-07-30
  • 2018-05-14
相关资源
最近更新 更多