如何檢查php/sql數據庫中while循環中選擇的任何字段是否爲0?檢查是否有0
$res = mysql_query('SELECT id, name FROM table'); \\check here?
while($row = mysql_fetch_array)
{
\\or check here?
}
在此先感謝!
編輯: 我需要選擇所有字段,然後檢查是否它們中的任何一個是在查詢0
如何檢查php/sql數據庫中while循環中選擇的任何字段是否爲0?檢查是否有0
$res = mysql_query('SELECT id, name FROM table'); \\check here?
while($row = mysql_fetch_array)
{
\\or check here?
}
在此先感謝!
編輯: 我需要選擇所有字段,然後檢查是否它們中的任何一個是在查詢0
$foundZero = false;
$res = mysql_query('SELECT id, name FROM table');
while ($row = mysql_fetch_array($res))
{
if (in_array(0, $row))
{
// This row has a zero
$foundZero = true;
}
}
if ($foundZero)
{
// at least one zero in one row has been found
}
else
{
// No zeros have been found
}
如果$foundZero
爲真,則至少一個字段中的一行是等於0。否則,所有字段都是非零的。
是的!那是我正在尋找...至少有一個零!我的頭如果只是如此F通過坐在電腦上好幾個小時.. tahnks! – zorgyo 2010-11-02 13:07:27
添加where子句
SELECT id, name FROM table where my_field=0
,那麼你並不需要檢查每一個結果,你只會得到想要的結果行。
顯然,檢查while循環。對於查詢可能會返回零行。
$res = mysql_query('SELECT count(*) FROM table WHERE my_field=0'); \\check here?
if(mysql_num_rows($res) > 0)
{
while($row = mysql_fetch_array)
{
\\or check here?
}
}
如果您確實必須返回所有行然後檢查零,請在您的查詢中添加一個order by子句以最小化您的檢查。
SELECT id, name FROM table ORDER BY id DESC
然後
if ($id <= 0)
handleIt()
else
proceed()
請澄清情況請。發現的目的究竟是什麼? – Gordon 2010-11-02 12:39:14
任何字段都是指id和name!爲什麼你想檢查名稱是零? – TechTravelThink 2010-11-02 12:40:15
你是否真的需要使用這些行,不管是否有零? – 2010-11-02 12:45:34