从所选行中检索表ID

问题描述 投票:-3回答:3

所以我已经坚持了一段时间,我在谷歌找不到任何关于这个特定的东西。

我有这小段代码

$link = mysqli_connect("localhost", 'username','password',"database");
$sql = "SELECT * FROM `uploads` ORDER BY id DESC LIMIT 0, 1";

哪个应该按照id的顺序选择最新的表?那么我想要做的就是返回这个id。因此,如果我有5个项目/行,我想获取表格的最新(在本例中为5)id,并返回它。最终的目标是在javascript中使用这个返回的id,但这是后来的担心,现在我只想在纯文本中,结果应该只是id。

这可能是一个重复的问题,但我不能为我的生活找到我应该谷歌去那里

编辑:

我想我应该进一步澄清。我知道我能做到

$sql = "SELECT ID FROM `uploads` ORDER BY id DESC LIMIT 0, 1";

但每当我尝试实际检索它/打印它时,它返回为字符串而不是ID。

编辑2:我,由于一些评论,我设法弄明白了。对于措辞严厉的一切感到抱歉,我是新手,正如我所说,不知道如何说出来。

解:

刚刚扔掉我添加的$ sql之后:

$result = mysqli_query($link,"SELECT * FROM `uploads`"); 

然后我就这样做了

echo mysqli_num_rows($result); 

回显出行/我称之为“ID”的行数。

抱歉所有的困惑,感谢那些试图帮助的人。对其他人来说,没有必要粗鲁。

php mysql mysqli
3个回答
0
投票

如果我理解你的问题,你只想获得ID字段,所以你有两个选择:

选项1(推荐)

鉴于你的代码

$sql = "SELECT * FROM `uploads` ORDER BY id DESC LIMIT 0, 1";

将其更改为:

$sql = "SELECT ID FROM `uploads` ORDER BY id DESC LIMIT 0, 1";

这样,你就得到了你所追求的那个ID场。每行都没有返回任何其他内容。

选项2

按原样保存sql查询,并从结果中的每一行获取ID字段(它是一个数组,因此您只能使用其索引或名称检索一个字段)。

当然,我认为你桌上有一个ID字段!


0
投票

只需选择ID即可。

SELECT id
FROM   uploads
ORDER  BY id DESC
LIMIT  1;

0
投票

只需选择您想要的。

$sql = "SELECT id FROM `uploads` ORDER BY id DESC LIMIT 0, 1";

*表示您想要选择每一列。但是,SQL使您可以选择所需的特定列。你也可以这样做

$sql = "SELECT id, name, title, somethingelse FROM `uploads` ORDER BY id DESC LIMIT 0, 1";

你会收到这4个字段作为数组。

© www.soinside.com 2019 - 2024. All rights reserved.