首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何针对mysqli查询返回的特定行

如何针对mysqli查询返回的特定行
EN

Stack Overflow用户
提问于 2016-12-21 06:45:56
回答 3查看 1.3K关注 0票数 0

假设我有一个包含以下列的表:id-1, id-2, col-1, col-2, col-3这里,id-1是主键,并且是自动递增的。id-2是一个不同的id,并不是唯一的。该列中有多个相同id的实例。col-1、col-2、col-3只是必要的列.

我传递一个查询来从表中选择数据。

代码语言:javascript
复制
mysqli_query($connect, SELECT * FROM table WHERE id-2='some_specific_id')

它将返回多行。我想知道如何针对特定的行,例如第3行。

EN

回答 3

Stack Overflow用户

发布于 2016-12-21 06:48:43

使用LIMIT获取您想要的内容:

代码语言:javascript
复制
SELECT * FROM table WHERE id-2='some_specific_id' LIMIT 2, 1;

或者,如果您想从数组中获取,然后使用数组的第三个索引。

LIMIT解释:

下面用两个参数说明LIMIT子句语法:

代码语言:javascript
复制
SELECT 
    column1,column2,...
FROM
    table
LIMIT offset , count;

让我们检查一下LIMIT 子句参数:

  • 偏移量指定要返回的第一行的偏移量。第一行的偏移量为0,而不是1。
  • 计数指定要返回的最大行数。
票数 0
EN

Stack Overflow用户

发布于 2016-12-21 06:50:05

首先,使用"

代码语言:javascript
复制
mysqli_query($connect, "SELECT * FROM table WHERE id-2 = 'some_specific_id'");

特定的目标行?你是说限制取出的行吗?还是第三排?

为了限制获取的行,可以使用LIMIT

代码语言:javascript
复制
SELECT * FROM table WHERE id-2='some_specific_id' LIMIT 3

用于获得第三行:

代码语言:javascript
复制
SELECT * FROM table WHERE id-2='some_specific_id' LIMIT 2, 1
票数 0
EN

Stack Overflow用户

发布于 2016-12-21 07:36:35

虽然你似乎只需要学习基本SQL才能得到答案,但标题中仍然有一个问题,这可能会吸引其他人,他们的问题就是这样表述的。答案也是这样:

Mysqli对于这个任务不太方便,所以我们将使用PDO。

  • 如果查询的目的是返回多个行,并且需要按编号对其中一个行进行寻址(这几乎没有意义,但无论如何),请使用fetchAll()方法: $stmt = $connect->prepare("SELECT * FROM table WHERE id2=?");$stmt->execute(‘一些特定的id');$data =$stmt->id2=(); 您将能够按数字寻址返回的行,从零开始: 回声$data;
  • 但是,用一些唯一的id来处理返回的行更有意义。在本例中,只需在字段列表中添加这个唯一字段fiset,然后使用特殊的PDO街魔法: $stmt =$connect-> table (“从id2=的表中选择id1,table.* );$stmt->execute(‘一些特定的id');$data =$stmt->id2=(PDO::FETCH_UNIQUE); 并且您将能够通过这个唯一的字段来寻址返回的行: 回声$data$id1;
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41256705

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档