变量mysql查询(其中$ variable = everything)

时间:2014-04-09 10:00:30

标签: php mysql

我正在考虑制作一个函数的最有效方法,该函数返回我在特定查询中获得的行数。我需要对查询进行大量修改,因为我将其用于大量统计信息。(在实际版本中,它是大约5个变量,而不是2个)而不是发布我的完整代码,我创建了一个小片段,它将指出我想要克服的是什么$ conn是我的PDO连接。表的名称以及字段的名称是固定的。

function stackOverflowDemo($var1,$var2){
global $conn;
$totalrows = $conn->query("select count(*) from $table WHERE firstfield = $var1 AND secondfield = $var2 ")->fetchColumn();
return $totalrows;
}

$output = stackOverflowDemo('1','30');

所以现在它会给我满足上述条件的行数。 (firstfield = 1 AND secondfield = 30)但现在有了线索:现在我想要firstfield is 1 and secondfield is anything(如*)的行数。如何在不必编写新功能或专用查询的情况下为我工作?

2 个答案:

答案 0 :(得分:2)

function stackOverflowDemo($var1,$var2){
global $conn;
$query = "select count(*) from $table WHERE firstfield IS $var1 AND secondfield IS $var2";
$totalrows = $conn->query($query)->fetchColumn();
return $totalrows;
}

$output = stackOverflowDemo('1','NOT NULL');

也许这适合你?

答案 1 :(得分:1)

  

现在我想要firstfield1secondfield为任何内容的行数(如*)

您的查询应分别查找每个firstfieldsecondfield的匹配项,然后对其进行计数。

省略null的{​​{1}}条目,您可以尝试以下操作:

secondfield