douqi0090 2012-03-24 21:00
浏览 734
已采纳

MySQL中的IF语句,使用THEN和ELSE

I am testing out IF statements in MySQL for the first time and I am coming across an error.

I am trying to firstly, find out how many rows are in the table, then depending on whether the count is less than or equal to five, return all of the rows in the table, or if it isn't, return all posts in the range used within the LIMIT clause.

The error I am receiving is as follows;

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 'IF SELECT COUNT(*) FROM Posts <= 5 THEN SELECT * FROM Posts ELSE SELECT * FR' at line 1

Please can you tell me where I am going wrong?

Max.

$query = mysql_query(
    "IF SELECT COUNT(*) FROM `Posts` <= 5 
     THEN 
         SELECT * FROM `Posts` 
     ELSE 
         SELECT * FROM `Posts` LIMIT $from, $limit") 
     or die(mysql_error());
  • 写回答

2条回答 默认 最新

  • douci6541 2012-03-24 21:05
    关注

    you don't need to do this. Mysql handles this automatically, just use

    $query = "SELECT * FROM `Posts` LIMIT $from, $limit";
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 请提交代码 5月11日

悬赏问题

  • ¥15 宇视监控服务器无法登录
  • ¥15 PADS Logic 原理图
  • ¥15 PADS Logic 图标
  • ¥15 电脑和power bi环境都是英文如何将日期层次结构转换成英文
  • ¥20 气象站点数据求取中~
  • ¥15 如何获取APP内弹出的网址链接
  • ¥15 wifi 图标不见了 不知道怎么办 上不了网 变成小地球了
  • ¥50 STM32单片机传感器读取错误
  • ¥50 power BI 从Mysql服务器导入数据,但连接进去后显示表无数据
  • ¥15 (关键词-阻抗匹配,HFSS,RFID标签天线)