Retroceder   Foros del Web > Programación para sitios web > Bases de Datos > Mysql

Respuesta
 
Herramientas Desplegado
Antiguo 17-ene-2008, 12:52   #1 (permalink)
intergus ha deshabilitado el karma
 
Avatar de intergus
 
Fecha de Ingreso: mayo-2007
Mensajes: 55
Enviar un mensaje por MSN a intergus
¿Puede afectar a este SELECT la version de Mysql?

Pues eso que me estoy desesperando, no es que lleve mucho tiempo pero es que no veo la luz.

El siguiente SELECT funciona perfectamente en local y lo subo al server y no funciona, la diferencia entre el server y mi local es la version de mysql, pero no se si puede afectar.

Creeis que van por ahi los tiros???

texto es un campo de la tabla busca y tt lo uso como campo calculado

select texto, tt from (Select texto, count(texto) as tt from busca GROUP BY texto ORDER BY count(texto) DESC LIMIT $limite) foo order by texto

La tabla es muy simple, 3 campos que ademas solo interviene el campo texto en la consulta. Ademñas el campo texto es indice y ya no se que mas mirar.

La version del server es la 4.1.20
La version en local es la 5.0.45

He leido algo sobre una posible incompatibilidad y que se podria construir el mismo resultado con JOINs pero estoy perdido.

Gracias de antemano por leer mi caso

Última edición por intergus; 17-ene-2008 a las 13:43.
intergus está desconectado   Responder Citando
Antiguo 17-ene-2008, 14:27   #2 (permalink)
Genetix tiene algunos puntos positivos de karma
 
Avatar de Genetix
 
Fecha de Ingreso: noviembre-2002
Ubicación: LP
Mensajes: 882
Re: ¿Puede afectar a este SELECT la version de Mysql?

Las versiones recientes de mysql recién soportan subColsultas.
Saludos!
Genetix está desconectado   Responder Citando
Antiguo 17-ene-2008, 15:39   #3 (permalink)
intergus ha deshabilitado el karma
 
Avatar de intergus
 
Fecha de Ingreso: mayo-2007
Mensajes: 55
Enviar un mensaje por MSN a intergus
Re: ¿Puede afectar a este SELECT la version de Mysql?

Al parecer no es del todo problema de la subconsulta. Al parecer el select no funciona , pero haciendo pruebas he conseguido este otro que si funciona en el server:

select texto, tt from (Select texto, count(texto) as tt from busca GROUP BY texto LIMIT $limite) foo order by texto

la diferencia con el anterior es que le he quitado un Order By count(texto) en el select interno y con eso ya funciona, pero no me da los resultados que necesito pues al estar el LIMIT no coge mas que los primeros alfabeticamente.

Tal como lo necesito deberia poder hacer el Order By count (texto dentro del Select para que coja los 12 de mayor valor, no los 12 primeros como hace ahora.

Habría alguna solución

Resumen: (asi funciona pero no me da lo que quiero)
Select texto, tt from (Select texto, count(texto) as tt from busca GROUP BY texto LIMIT $limite) foo order by texto

Asi NO funciona pero en local va perfecto y me da lo que quiero:

Select texto, tt from (Select texto, count(texto) as tt from busca GROUP BY texto ORDER BY count(texto) DESC LIMIT $limite) foo order by texto
intergus está desconectado   Responder Citando
Respuesta

No hay votos aún.


Herramientas
Desplegado

Normas de Publicación
No puedes crear nuevos temas
No puedes responder temas
No puedes subir archivos adjuntos
No puedes editar tus mensajes

BB code is Activado
Caritas están Activado
[IMG] está Activado
Código HTML está Desactivado


La Zona horaria es GMT -6. Ahora son las 03:46.


Message Board Statistics

LinkBacks Enabled by vBSEO 3.1.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93