-1

次のクエリを使用していました。

$sql = $db->Query("SELECT a.id, a.t_name, a.cpc FROM twitter a LEFT JOIN users b ON b.id = a.user LEFT JOIN followed c ON c.user_id = '".$data['id']."' AND c.site_id = a.id WHERE a.active = '0' AND (b.coins >= a.cpc AND a.cpc >= '2') AND (c.site_id IS NULL AND a.user !='".$data['id']."')".$dbt_value." ORDER BY a.cpc DESC".($site['mysql_random'] == 1 ? ', RAND()' : '')." LIMIT 14");

しかし、私は追加したいと思います:

AND (a.d_max > '0' OR a.d_max = u) AND (a.max > '0' OR a.max = u)

だから私はそれを次のように追加しました:

$sql = $db->Query("SELECT a.id, a.t_name, a.cpc FROM twitter a LEFT JOIN users b ON b.id = a.user LEFT JOIN followed c ON c.user_id = '".$data['id']."' AND c.site_id = a.id WHERE a.active = '0' AND (a.d_max > '0' OR a.d_max = u) AND (a.max > '0' OR a.max = u) AND (b.coins >= a.cpc AND a.cpc >= '2') AND (c.site_id IS NULL AND a.user !='".$data['id']."')".$dbt_value." ORDER BY a.cpc DESC".($site['mysql_random'] == 1 ? ', RAND()' : '')." LIMIT 14");

ただし、次のエラーが表示されます。

SQL エラー: 'where 句' の列 'u' が不明です:

これは非常に単純なはずですが、見逃しているだけです。何が問題なのかを見つけることができますか?

4

1 に答える 1

2

こんなはずじゃなかった

AND (a.d_max > '0' OR a.d_max = 'u') AND (a.max > '0' OR a.max = 'u')
于 2013-03-13T18:38:16.527 に答える