2016-04-15 4 views
0

Meine MySQL-Abfrage istIch mag Daten zwischen zwei Terminen bekommen, aber es zeigt 1064 Fehler

SELECT 
    testid, 
    testName, 
    DATE(testviewaudit.datetime) , 
    SUM(action=1) AS view, 
    SUM(action=2) AS start, 
    SUM(action=3) AS finish 
FROM testviewaudit 
INNER JOIN tmtests 
ON estviewaudit.testid = tmtests.tsid 
WHERE DATE(testviewaudit.datetime) >= '2016-03-12' 
AND DATE(testviewaudit.datetime) <= '2016-03-15' 
GROUP BY testid; 

Nun die obige Abfrage zur Verwendung von I 1064 Störung erhalte

+0

und was ist die Fehlermeldung? –

+0

Fehlercode: 1064. Sie haben einen Fehler in Ihrer SQL-Syntax; Überprüfen Sie das Handbuch, das Ihrer MySQL Server-Version für die richtige Syntax entspricht, um in der Nähe 'innere Join tmtests auf testviewaudit.testid = tmtests.tsid zu verwenden, wo Aktion = 1 o' in Zeile 1 –

+0

Schreiben Sie die Fehlermeldung in Ihre Frage. Allerdings sehe ich den Fehler nicht. Vielleicht 'view' oder' start', die Probleme machen. –

Antwort

0

Versuchen zu vermeiden MySQL reserved words wie view mit oder start.

SELECT testid, testname, DATE(testviewaudit.datetime) , 
SUM(ACTION=1) AS dview, 
SUM(ACTION=2) AS dstart, 
SUM(ACTION=3) AS dfinish 
FROM testviewaudit 
INNER JOIN tmtests 
ON estviewaudit.testid=tmtests.tsid WHERE DATE(testviewaudit.datetime) >= '2016-03-12' AND DATE(testviewaudit.datetime) <= '2016-03-15' 
GROUP BY testid; 
+0

Während ich mit Ihrem Kommentar einverstanden bin, ist es wahrscheinlich nicht das Problem. Ich testete 'Select 1 als Ansicht, 2 als Start' - es funktioniert. –

+0

@PaulSpiegel Ihr Recht. Auch ich denke, dass dein Kommentar sinnvoll ist. – F0G

0

Sie nur verwenden, um zwischen Abfrage

SELECT 
 
    testid, 
 
    testName, 
 
    DATE(testviewaudit.datetime), 
 
    SUM(action = 1) AS view, 
 
    SUM(action = 2) AS start, 
 
    SUM(action = 3) AS finish 
 
    FROM testviewaudit INNER JOIN tmtests ON estviewaudit.testid = tmtests.tsid 
 
    WHERE DATE(testviewaudit.datetime) between '2016-03-12' 
 
\t AND '2016-03-15' GROUP BY testid;

Verwandte Themen