更有效的方法来获取填充单值的MySQL行

时间:2016-06-21 14:09:30

标签: php mysql

现在我正在尝试从SQL响应中设置一个变量,而不是超出必要的范围。

情况是我有SELECT + JOIN查询的SQL结果,sys.setdefaultencoding('utf-8')列只有一个值。其他列每行不同,我需要遍历它们以获取该数据。我想知道是否有办法从user_id列中提取同质值而不将其一遍又一遍地设置为我的while循环中的变量。

代码:

user_id

SQL:

#where I would like the $user_id to be set
while($responseArray = $response->fetch_assoc()){
    $userId = $responseArray["user_id"]; #what I don't want to do
    #other fetching stuff
}

1 个答案:

答案 0 :(得分:0)

您无法取得至少一个结果行。即使是$result = $db->query(...); $row = $result->fetchRow(); $value = $row['somefield']; - 类型的函数也可以这样做。但是,如果你只想要一行,那为什么还要首先使用循环呢?

$result = $db->query(...);
while($row = $result->fetchRow()) {
    $value = $row['somefield'];
    break;
}

会比傻逼的好得多。

{{1}}