我想要一张表的上半部分和下半部分数据,我正在使用查询,即使计数为偶数也可以正常工作
select count(*) from reviews
select * from reviews limit count/2
select * from reviews offset count/2
但是当计数为奇数时,这些查询将失败
请提供任何解决方案
PHP代码
public function getdatedata($data,$data1){
if(empty($data) && empty($data1) ) return false;
$data1 = $data1/2;
$empty='';
$sql = "SELECT ";
$sql .= $this->reviews.".*";
$sql .= " FROM ".$this->reviews;
$sql .= " WHERE DATE(reviews_date) = '" . $data . "' LIMIT CEIL(". $data1.")";
$result = $this->db->query($sql);
if($result->num_rows > 0){
return $result;
} else
{ return $empty ;}
}
最佳答案
您可以使用CEIL
舍入结果:
select count(*) from reviews
select * from reviews limit CEIL(count/2)
select * from reviews offset CEIL(count/2)
您也可以根据需要使用
FLOOR
或ROUND
。关于mysql - 将数据库表数据分为两部分,但如果计数为奇数怎么办,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/47042769/