2
テーブルデバイス:数の複数の行の値は、MySQL
id device type_id device_status
1 dev1 2 1
2 dev2 2 2
3 dev3 7 2
4 dev5 9 3
モデルテーブル:
model_id vendor_id model_name
1 3 name1
2 5 name2
3 7 name3
4 7 name4
とクエリーこのなります。私はから取得しています何
SELECT model_id, type_id, model_name,
COUNT(type_id) AS numOfDevices
FROM devices
LEFT JOIN models ON models.model_id = devices.type_id
WHERE device_status = 2 OR device_status = 3
GROUP BY type_id
をそのクエリは:
There are $numOfDevices $model_name items.
これは問題ありませんが、同じクエリでdevice_status = 3でデバイスを数える方法はありますか?
'SUM(device_status = 2)device2'は0または1のどちらかなので、あなたのCASE WHEN返し、それは丈夫それは:) "ブール" であることを確認していないAS必要ない。 –
エラーが発生しています:{"errorInfo":["42000"、1064、 "SQL構文にエラーがあります;右側の構文はMySQLサーバーのバージョンに対応するマニュアルを参照してください。 \ n \ t \ t \ t \ t \ t \ t \ t \ t \ t \ t \ t \ tLEFT JOINモデルはmodels.model_id = devices.type_id \ r 'の4行目にあります]]}私はPDOを使用しています。5.1.62はmysqlのバージョンです – InTry
3行目の最後の '、'を削除してください。 –