2017-03-27 14 views
1

Ich brauche alle Zeilen für Spiele 'Flashcards' für jeden Benutzer zurückgegeben.SQL: Ich bekomme nur eine Zeile pro Benutzer zurückgegeben

Im Moment bekomme ich nur eine Zeile für jeden Benutzer zurückgegeben.

SELECT 
    s.name as Escuela, 
    sc.class_description as Clase, 
    u.level as "Nivel Del Alumno", 
    CONCAT(u.firstname," ",u.lastname) as Nombre, 
    stats.game_type as "Tipo de Juego", 
    MIN(stats.time) as "Tiempo en Segundos", 
    SEC_TO_TIME(stats.time) as "Tiempo en Formato" 
FROM 
    game_statistics stats 
INNER JOIN 
    users1 u ON stats.user_id = u.id 
INNER JOIN 
    school_classes sc ON u.class_id = sc.id 
INNER JOIN 
    schools s ON s.id = sc.school_id 
WHERE 
    stats.game_type LIKE 'flashcards' 
GROUP BY 
    s.name, sc.class_description, 
    u.level, Nombre, stats.game_type 
ORDER BY 
    s.name, sc.class_description, 
    u.level, stats.game_type, stats.time 
+3

Welche DBMS verwenden Sie. (Diese Abfrage ist ein bisschen ungültig ...) – jarlh

Antwort

0

Verwenden Sie die folgende Abfrage. Sie müssen ein Wildcard-Zeichen von % einschließen, um alle Zeilen mit dem Text flashcard zu erhalten. Wenn Sie den Operator LIKE in einer Abfrage verwenden, sollten Sie Platzhalterzeichen verwenden, da sonst der Zweck der Verwendung von LIKE nicht erfüllt wird.

SELECT 
    s.name AS Escuela 
    ,sc.class_description AS Clase 
    ,u.level AS "Nivel Del Alumno" 
    ,CONCAT(u.firstname, " ", u.lastname) AS Nombre 
    ,stats.game_type AS "Tipo de Juego" 
    ,MIN(stats.TIME) AS "Tiempo en Segundos" 
    ,SEC_TO_TIME(stats.TIME) AS "Tiempo en Formato" 
    FROM game_statistics stats 
    INNER JOIN users1 u 
    ON stats.user_id = u.id 
    INNER JOIN school_classes sc 
    ON u.class_id = sc.id 
    INNER JOIN schools s 
    ON s.id = sc.school_id 
    WHERE stats.game_type LIKE '%flashcards%' 
    GROUP BY s.name 
      ,sc.class_description 
      ,u.level 
      ,Nombre 
      ,stats.game_type 
    ORDER BY s.name, sc.class_description, u.level, stats.game_type, stats.TIME 
+0

Hallo. Bevor ich eine Zeile pro Benutzer bekam. Jetzt bekomme ich keine. Ich kopiere deinen Code und füge ihn ein. Tgen, ich habe meinen benutzt und habe gerade den Wildcard-Charakter hinzugefügt, aber ich fürchte, ich bekomme jetzt keine Zeilen zurück. – user3149225

+0

Hallo. Ich bekomme nichts. Aber wenn ich den Platzhalter lösche, funktioniert es. – user3149225

+0

Ja, das ist mir aufgefallen und ich habe gerade meine Anfrage geändert. Dank dafür. – Sunil

Verwandte Themen