简体   繁体   English

PHP的MySQL查询问题

[英]MySQL query issue with PHP

I want take tanggal and waktu fields with condition of it's max id and lumen_satu < 1000 . 我想以最大idlumen_satu < 1000条件获取tanggalwaktu字段。

Here's my code 这是我的代码

<?php 
require_once 'koneksi.php';
$sql = "SELECT tanggal, waktu from nilai_lumen WHERE lumen_satu < 1000 AND id=(SELECT MAX(id) from nilai_lumen)";
$r = mysqli_query($conn,$sql);

$data = mysqli_fetch_row($r);
echo "$data[0] $data[1]"

When I ran it, I got nothing; 当我运行它时,我什么也没有。 because the last database insert is lumen_satu > 1000 因为最后一个数据库插入是lumen_satu > 1000

I want to get id before that but because I use MAX(id) I get the last id inserted in database. 我想在此之前获取id ,但是因为我使用MAX(id)所以我获得了插入数据库中的最后一个id

How can i fix this? 我怎样才能解决这个问题?

根据您的病情,我想这就是您想要的

$sql = "SELECT tanggal, waktu from nilai_lumen WHERE id=(SELECT MAX(id) from nilai_lumen WHERE lumen_satu < 1000)";

If you want to pick the row with max id where lumen_satu < 1000 and id column is set to auto increment then you can simply use order by and limit 如果要选择最大id为lumen_satu <1000且id列设置为自动递增的行,则可以简单地使用order by和limit

SELECT tanggal, waktu 
FROM nilai_lumen 
WHERE lumen_satu < 1000
ORDER BY id DESC
LIMIT 1

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM