Problema al mostrar COUNT con GROUPBY en SQLTABLE

32 views
Skip to first unread message

Fcosqui

unread,
Apr 9, 2014, 12:16:05 PM4/9/14
to web2py-...@googlegroups.com
Hola a todos,

Al actualizar a la nueva version de web2py ya no puedo visualizar el contenido de COUNT, esta es mi sentencia.

count = db.registros.portid.count()
rows = SQLTABLE(db(db.registros.protocol=='udp').select(db.registros.portid, count, orderby=db.registros.portid, groupby=db.registros.portid), headers={'registros.portid':'N° Puerto',str(db.registros.portid.count()):'Veces'}, orderby=True, _width="100%")

Solamente con esta sentencia puedo visualizar

N° Puerto
3
2
3
4
x

y en la version anterior 2.8.2-stable me aparece

N° Puerto     Veces
3                    30
2                    10
1                    30
20                   4
x                     x


¿Como puedo remediar esto?.


Gracias!

Federico Ferraro

unread,
Apr 9, 2014, 4:44:13 PM4/9/14
to web2py-...@googlegroups.com
Probaria mirando que devuelve la consulta:

count = db.registros.portid.count()
rows = db(db.registros.protocol=='udp').select(db.registros.portid, count, orderby=db.registros.portid, groupby=db.registros.portid)

Slds. ...


--
Has recibido este mensaje porque estás suscrito al grupo "web2py-usuarios" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a web2py-usuari...@googlegroups.com.
Para acceder a más opciones, visita https://groups.google.com/d/optout.



--
--
Federico Ferraro
Usuario Linux : 482533.
--

Fcosqui

unread,
Apr 9, 2014, 5:15:32 PM4/9/14
to web2py-...@googlegroups.com
Devuelve lo mismo, solo que cambia el nombre de la columna por registros.portid en vez de N° Puerto, por que se le quita el header.

Federico Ferraro

unread,
Apr 9, 2014, 5:56:31 PM4/9/14
to web2py-...@googlegroups.com
Y sin el parametro headers :

rows = SQLTABLE(db(db.registros.protocol=='udp').select(db.registros.portid, count, orderby=db.registros.portid, groupby=db.registros.portid),  _width="100%")

Debería mostrarte todas ta cual son ..

Slds ..

Federico Ferraro

unread,
Apr 9, 2014, 9:02:07 PM4/9/14
to web2py-...@googlegroups.com
Hola estuve probando al consulta con la ultima versión de web2py y se ve correctamente ..
Esta es mi tabla de pruebas:

datos.id datos.ip
1 192.168.2.55
2192.168.17.6
3 192.168.2.66
4192.168.17.6
5 192.168.17.6
6192.168.17.6
7 192.168.17.6
8192.168.2.66
9 192.168.2.66
10192.168.2.66
11 192.168.2.66
12192.168.2.66
13 192.168.2.66
14192.168.2.66
15 192.168.2.66
16192.168.2.55
17 192.168.2.55
18192.168.2.55

CONSULTA:
count = db.datos.ip.count()
rows=SQLTABLE(db(db.datos.ip).select(db.datos.ip,count,groupby=db.datos.ip,orderby=db.datos.ip), headers={'datos.ip':'IP', str(count):'Cantidad'}, orderby=True, _width="100%")

SALIDA:
<table width="100%"><thead><tr><th><a data-w2p_disable_with="default" href="?orderby=datos.ip">IP</a></th><th><a data-w2p_disable_with="default" href="?orderby=COUNT(datos.ip)">Cantidad</a></th></tr></thead><tbody><tr class="even"><td>192.168.17.6</td><td>5</td></tr><tr class="odd"><td>192.168.2.55</td><td>4</td></tr><tr class="even"><td>192.168.2.66</td><td>9</td></tr></tbody></table>


Slds ..


Reply all
Reply to author
Forward
0 new messages