私は、次のエラーメッセージCOUNTフィールド間違っているか、構文エラー
Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[07002]: [Microsoft][ODBC Driver 11 for SQL Server]COUNT field incorrect or syntax error'...
を取得するときにエラーになり何これは私がSOに質問を検索しました私は
$sql = $pdo->prepare("SELECT stockamount, stockname, stockbalance.stockid, SUM(ABS(reservationtransaction.stockquantity)) AS reservedamount FROM stockbalance
JOIN stock ON stockbalance.stockid = stock.stockid
LEFT JOIN reservationtransaction ON reservationtransaction.articleid = :artid
WHERE stockbalance.articleid = :artid AND ((changeddate > DATEADD(yy,-1,GETDATE()) AND inventorydate > DATEADD(yy,-1,GETDATE())) OR stockbalance.stockamount <> 0)
GROUP BY stockbalance.stockid");
$sql->bindValue(':artid', $productId);
$sql->execute();
を使用しているクエリですが、誰も似ていない、または役に立たなかった。
ありがとうございます。
編集:このクエリは、Microsoft SQL Server Management Studioで実行すると問題なく動作しますが、PDOを使用するとエラーが発生します。
ユニークな名前を持っている必要があります'MIN'のような集合メソッドなしでそれらを選択することはできません。 –
MySQLのバックグラウンドを持っていると思います。http://stackoverflow.com/questions/33629168/group-by-clause-in-mysql-and-postgresql-why-the-error-in-postgresql/33629201#33629201要点は、MySQLの集約動作はANSIの苦情ではありません。 – lad2025
エラーメッセージごとに、これはPDOExceptionであり、SQL例外ではありません。結果セットとバインドしようとしているオブジェクトが一致していない可能性がありますか? –