2013-01-03 52 views
0

所有的Mysql查詢似乎對我的表中的「年齡」有完美的期望條件。例如我需要年齡來過濾這種情況從age >=20age <=30,外翻似乎工作,但不是年齡。MySQL中有條件顯示特定年齡的條款

例如檢查這裏的鏈接a link

$sql = "SELECT * FROM `file_records` 
      WHERE (`country` = '$country' OR '$country' IS NULL) 
       OR (`gender` = '$gender' OR'$gender' IS NULL) 
       OR (`cast` = '$cast' OR '$cast' IS NULL) 
       OR (
        (`age` >= '$age_from' OR '$age_from' IS NULL) 
        AND (`age` <= '$age_to' OR '$age_to' IS NULL) 
       ) 
      LIMIT 0 , 30"; 

回答

0

你選擇和運營商之間的年齡,如這種格式

SELECT column_name(s) 
FROM table_name 
WHERE age 
BETWEEN age >=20 and age <=30 
+0

謝謝,介於和運營商完美合作。 – sanainfotech

0

您可以使用MySQL BETWEEN功能像

age BETWEEN 20 AND 30 
+0

感謝ü,是的,我的功能之間使用 – sanainfotech

0

要檢查> =兩個從和日期..試試這個..

$sql = "SELECT * FROM `file_records` 
     WHERE (`country` = '$country' OR '$country' IS NULL) 
      OR (`gender` = '$gender' OR' $gender' IS NULL) 
      OR (`cast` = '$cast' OR '$cast' IS NULL) 
      OR ((`age` >= '$age_from' OR '$age_from' IS NULL) 
       AND (`age` <= '$age_to' OR '$age_to' IS NULL)) 
     LIMIT 0 , 30"; 
+0

感謝錯字錯誤得到了它。 – sanainfotech

0

如果你echo $sql;,你會看到,它是不可能的 '' IS NULL是真實的。

你想要的東西像

OR ((`age` >= '$age_from' OR '$age_from' = '') 
      AND (`age` <= '$age_to' OR '$age_to' = '')) 
+0

謝謝,它的工作完美與'' – sanainfotech