从所选行

时间:2018-03-06 11:03:43

标签: php mysql mysqli

所以我已经被困在这一段时间了,我无法在Google上找到任何关于特定事情的内容。

我有一小段代码

$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"。

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

3 个答案:

答案 0 :(得分: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字段!

答案 1 :(得分:0)

只需选择ID。

SELECT id
FROM   uploads
ORDER  BY id DESC
LIMIT  1;

答案 2 :(得分: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个字段作为数组。