我正在查詢整個表單其中元素的類型在選擇中被選中。Mysql WHERE子句等於所有元素
我的查詢是這樣的:
SELECT * from table WHERE element = $selection.
現在,在選擇的選項之一是顯示所有。我怎樣才能做一個查詢,如:
SELECT * from table WHERE element = ALL?
我知道我可以驗證它,並使用不同的查詢爲每個個案,
元素選擇:
SELECT * from table WHERE element = $selection
如果$selection == 'all'
然後使用:
SELECT * from table
但這是隻是一個例子,在我的情況下,我將不得不做太多查詢,我可以做,但我想事先檢查,如果我只能使用ONE查詢兩種情況。
這是我的代碼:
function displayElements($sec,$ele,$from,$to){ // sec and ele could be set to 'ALL'
mysql_connect("#", "#", "#") or die(mysql_error());
mysql_select_db("#") or die(mysql_error());
mysql_query("SET NAMES 'utf8'");
//queries
if($ele == 'Box'){
$resultado = mysql_query("SELECT * FROM elementos WHERE seccion = '$sec' AND elemento LIKE '%Box:%' AND fecha BETWEEN '$from' AND '$to' ORDER BY fecha ASC");
}
else{
$resultado = mysql_query("SELECT * FROM elementos WHERE seccion = '$sec' AND elemento = '$ele' AND fecha BETWEEN '$from' AND '$to' ORDER BY fecha ASC");
}
if (!$resultado) {
echo "No se pudo ejecutar con exito la consulta ($sql) en la BD: " . mysql_error();
exit;
}
if (mysql_num_rows($resultado) == 0) {
echo "nada para mostrar.";
exit;
}..blablabla
謝謝!
什麼是輸入表以及如何期望的結果表看起來像(不是所有的20.000 DATAS,而是一個例子)) – helle
剛剛離開'where'?或者在('...','...')中使用'where元素,如果語句是自動生成的 – halfbit