1
SELECT id from reparacoes WHERE id_reparacao 
IN (select DISTINCT re.id_reparacao 
FROM reparacoes re 
WHERE(edit_user="loja cascais" AND estado="Fechada" AND edit_data = (SELECT edit_data, id FROM reparacoes WHERE id_reparacao=re.id_reparacao ORDER BY edit_data DESC LIMIT 1)))

phpmyadmin でクエリを実行すると、次のエラーが表示されます。

#1241 - Operand should contain 1 column(s)
4

1 に答える 1

3

あなたの問題はここにあります:

edit_data = (SELECT edit_data, id FROM reparacoes WHERE id_reparacao=re.id_reparacao ORDER BY edit_data DESC LIMIT 1)

スカラーフィールドを複数の列を持つもの (つまり、スカラーではなく行) と比較することはできません。

私は正しいと思います:

edit_data = (SELECT edit_data FROM reparacoes WHERE id_reparacao=re.id_reparacao ORDER BY edit_data DESC LIMIT 1)
于 2013-08-29T11:51:36.097 に答える