2016-04-15 37 views
0

我的MySQL代碼:如何檢查現場條件在MySQL查詢

$sqlstd = mysql_query(
    "SELECT cd.cf_did AS id, 
      cd.cf_companyname AS name, 
      cd.cf_description AS descp, 
      cd.cf_payment AS pay, 
      cd.cf_status AS status, 
      GROUP_CONCAT(ct.cf_ctname SEPARATOR ', ') AS cranetype 
    FROM  cf_directory cd, 
      cf_cranetype ct 
    WHERE FIND_IN_SET(ct.cf_ctid, cd.cf_cranetype) 
    GROUP BY cd.cf_did, 
      cd.cf_companyname, 
      cd.cf_description, 
      cd.cf_payment, 
      cd.cf_status 
    ORDER BY cd.cf_did DESC LIMIT 4", 
    $con); 

我要檢查在這個查詢2個WHERE條件:cd.cf_payment='top' AND cd.cf_status='1'

我使用這個代碼:

$sqlstd = mysql_query(
    "SELECT cd.cf_did AS id, 
      cd.cf_companyname AS name, 
      cd.cf_description AS descp, 
      cd.cf_payment AS pay, 
      cd.cf_status AS status, 
      GROUP_CONCAT(ct.cf_ctname SEPARATOR ', ') AS cranetype 
    FROM  cf_directory cd, 
      cf_cranetype ct 
    WHERE cd.cf_payment='top', 
      cd.cf_status='1' 
     AND FIND_IN_SET(ct.cf_ctid, cd.cf_cranetype) 
    GROUP By cd.cf_did, 
      cd.cf_companyname, 
      cd.cf_description, 
      cd.cf_payment, 
      cd.cf_status 
    ORDER BY cd.cf_did DESC 
    LIMIT 4", 
    $con); 

,但它不工作。

我如何在WHERE條件中添加2個字段(cf_payment,cf_status)檢查?

+0

您不應該使用舊的和不推薦使用的mysql_ *函數。請轉到php.net並查找PDO。 –

回答

0

其中條件與AND/OR不連接逗號。

更新

WHERE cd.cf_payment='top',cd.cf_status='1' 

要:

WHERE cd.cf_payment='top' AND cd.cf_status='1' 

注:請避免使用mysql_*功能,因爲它們已被棄用。使用或mysqli_*

+0

謝謝先生......其工作 – IPSCR