2011-06-09 15 views
8

¿Cuál es la sintaxis correcta para hacer que la cláusula over funcione en mysql?MySql utilizando la sintaxis correcta para la cláusula anterior

Me gustaría ver los sms totales enviados por cada usuario sin agruparlos con la cláusula group by.

SELECT 
    username, 
    count(sentSmsId) OVER (userId) 
FROM 
    sentSmsTable, 
    userTable 
WHERE 
    userId = sentUserId; 
+0

¿qué tipo de resultado desea obtener a través de esta consulta? –

+0

Me gustaría ver los sms totales enviados por cada usuario sin agruparlos con la cláusula group by. – Nightwolf

Respuesta

5

MySQL no es compatible actualmente con funciones de ventana, por lo que sólo se over() producir errores de sintaxis (o basura, si se acepta sin importar).

1

MySQL 8 tiene el window functions! Por lo tanto, puede escribir su consulta de la siguiente manera:

SELECT username, 
     count(sentSmsId) OVER (partition by userId) 
FROM sentSmsTable 
JOIN userTable ON userId = sentUserId;  
Cuestiones relacionadas