[英]How to get the minimum id from the table in MySql
我编写了一个MySql查询来获取与最小id相关的列。 看起来像这样
SELECT min(id) as ID,feed , idpropiedad FROM `registrofeed` WHERE feed=21
该表有4行,如下所示
所以根据我写的功能
function setLC()
{
$sql = "
SELECT min(id) as ID
, feed
, idpropiedad
FROM `registrofeed`
WHERE feed=21
";
$result = $this->localDb->execute($sql);
$row=mysql_fetch_array($result);
echo $sql;
echo $row['idpropiedad'];
$this->lastCode = $row['idpropiedad'];
}
它返回idpropiedad的空字符串
任何人都可以帮助我摆脱错误的地方
提前致谢
我认为你实际上正在寻找的查询是这样的:
SELECT id, feed, idpropiedad
FROM registrofeed
WHERE feed = 21
ORDER BY id ASC
LIMIT 1
MIN()
为您提供列中通常最低的值,它不会影响其余列。 如果你想要整行具有最低的id
它没有帮助。
为了说明,如果你真的想在这里使用MIN
,你必须这样做:
SELECT id, feed, idpropiedad
FROM registrofeed
WHERE id = (SELECT MIN(id) FROM registrofeed WHERE feed = 21)
你可以这样做一个更好的查询:
$sql = "
SELECT id as ID
, feed
, idpropiedad
FROM `registrofeed`
WHERE feed=21
HAVING MIN(id)
";
这将仅返回具有最小ID编号的一行。 它比使用ORDERING AND LIMIT 1更具可读性。
尝试将您的选择查询作为
SELECT * FROM registrofeed
WHERE feed
=' registrofeed
BY id
ASC LIMIT 1
这将获取具有最小id的行。
希望能帮助到你
试试这个
$sql = "SELECT min(id) as ID,feed , idpropiedad FROM `registrofeed` WHERE feed='21' order by id asc";
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.