Mysql Query Ausgabe-Datum minus 7 Tage

Diese kommen immer mit einer Fehlermeldung und ich kann nicht herausfinden, warum...

SELECT
  i.user_id
FROM (SELECT
    SUM(us.score) AS score_sum,
    us.user_id
      FROM user_scores us
      WHERE us.created >= DATE(DATE_SUB(NOW(),INTERVAL 7 DAY))
      GROUP BY us.user_id) AS i
ORDER BY i.score_sum
LIMIT 1

Ausnahme 'CDbException' mit Nachricht

CDbCommand Fehler beim ausführen der SQL-Anweisung: CDbCommand konnte nicht bereiten Sie das SQL-statement: SQLSTATE[HY000]: General error: 1 in der Nähe von "7": syntax-Fehler.

Die SQL-Anweisung ausgeführt wurde:

SELECT
  i.user_id
FROM (SELECT
    SUM(us.score) AS score_sum,
    us.user_id
      FROM user_scores us
      WHERE us.created >= DATE(DATE_SUB(NOW(),INTERVAL 7 DAY))
      GROUP BY us.user_id) AS i
ORDER BY i.score_sum
LIMIT 1



<?php

class WinnerCommand extends CConsoleCommand
{
    public function actionSelect()
    {
        $sql = "SELECT i.user_id FROM
            (SELECT SUM(us.score) AS score_sum, us.user_id FROM user_scores us
            WHERE us.created >= DATE(DATE_SUB(NOW(),INTERVAL 7 DAY))
            GROUP BY us.user_id) AS i
            ORDER BY i.score_sum
            LIMIT 1";
        $user_id = Yii::app()->db->createCommand($sql)->queryScalar();
        echo $user_id;
        return $user_id;
    }

}

?>

Welcher Datentyp ist created in der Tabelle?
Was API rufen Sie diese durch? Verwenden Sie eine vorbereitete Anweisung Platzhalter überall?
Wenn Sie die Abfrage ausführen direkt, wie Sie es oben in einem client, läuft es (wie es aussieht sollte)? Welche MySQL-version?
Erstellt einen timestamp.
Ich bin mit diesem innerhalb des Yii-framework.

InformationsquelleAutor KyleVan | 2013-03-02

Schreibe einen Kommentar