问题:对于一个调查,我有几行结果。每个调查在“结果”表中可以有任意数量的行。有一个名为 key_value 的列。它是 0 或 -1。在 PHP 中枚举 MySQL 数据库中的多行、访问每个对象并在 PHP 中标记一个 bool 值以告诉我这个特定调查是否有任何 key_value 为 0 的行的最快方法是什么?
类似这样的东西,除了不能暴力破解它......
for (i = 0; i < mysqlrows.length; i++){
if (mysqlrow.key_value == 0)
flag = true;
else
flag = false;
}
最佳答案
对所有匹配的(key_value = 0)结果进行操作:
$query = <<<EOD
SELECT result_id
FROM Results
WHERE key_value = 0
EOD;
$pdo = new PDO(....);
$stmt = $pdo->prepare($query);
if ($stmt->execute()) {
while ($result = $stmt->fetch(PDO::FETCH_ASSOC)) {
$result_id = $result['result_id'];
//do something with this result?
}
}
但是如果您只想要 key_value = 0 的结果的数量,请使用一些 SQL,例如:
SELECT COUNT(*) as num_with_zero FROM Results WHERE key_value = 0
关于php - 使用 PHP 枚举 MySQL DB 中的多个单元格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12103201/