尝试按限制降序排序时出现语法错误

时间:2019-06-05 18:53:48

标签: php mysql

我正在使用以下代码:

//Get latest version of regulation related to this CE Group
$rstmp = CustomQuery("
SELECT * 
  FROM EURegulations 
 ORDER 
    BY ValidFrom DESC 
 LIMIT 1 
 where CEGroupFk='".$values['CEGroupFk']."'
");
$datatmp = db_fetch_array($rstmp);

目的是返回该列表中与该外键相关的最新项目。

我收到以下消息:

  
      
  1. 您的SQL语法有误;检查与您的MariaDB服务器版本相对应的手册以使用正确的语法   在第1行的'where CEGroupFk ='5'附近;
  2.   
  3. 256;
  4.   

该数组似乎返回了良好的数据:

  
      
  1. Array([EURegulationReference] =>测试[EURegulationTitle] =>测试[ValidFrom] => 2019-06-19 00:00:00 [ValidTo] => 2019-06-28 00:00:00   [附件] => [CEGroupFk] => 5 [E ...;
  2.   
  3. Array([EURegulationPk] => 2);
  4.   

我假设我的customquery代码有问题,但看不到吗?

1 个答案:

答案 0 :(得分:0)

order by子句必须放在where子句

之后
$rstmp = CustomQuery("
  SELECT * FROM EURegulations 
   where CEGroupFk='".$values['CEGroupFk']."'
   ORDER BY ValidFrom DESC LIMIT 1
   ");