Querys curiosas... [aporten =P]

Iniciado por Kase, 6 Junio 2011, 10:50 AM

0 Miembros y 1 Visitante están viendo este tema.

Kase

bueno, aver si me siguen el juego..

este es un par de querys curiosas  que e desarrollado o visto...

multiplicar precios al buelo
tenemos una tabla con un campo precios y un campo tipo(euro, dolar, etc) y queremos que sin importar el tipo siempre nos de dolares, entonces necesitamos una tabla extra  monedas{tipo,multiplicador}

Citarselect precio * multiplicador from tabla,monedas where moneda.tipo = tabla.tipo

conseguir el maximo o minimo sin usar max o min
Citarmin
select * from tabla not in ( select * from tabla, tabla as tabla2 where tabla.columna > tabla2.columna)
max
select * from tabla not in ( select * from tabla, tabla as tabla2 where tabla.columna < tabla2.columna)

edad al vuelo, util para tener siempe la edad exacta
Citarselect *,   CASE
   WHEN (MONTH(edad) < MONTH(current_date)) THEN YEAR(current_date) - YEAR(edad)
   WHEN (MONTH(edad)) AND (DAY(edad) <= DAY(current_date)) THEN YEAR(current_date) - YEAR(edad)
   ELSE (YEAR(current_date) - YEAR(edad)) - 1
END AS age
         from usuario;

consulta random
CitarSELECT * FROM tabla WHERE columna ORDER BY RAND() LIMIT 10;

cambiar pass masivo
Citarupdate usuario set pass = md5(pass)
aportaciones? =P

[u]nsigned

La de random es muy util no la conocia...gracias!!

Citarmultiplicar precios al vuelo
:-X

Saludos!  ;D

No hay atajo ante la duda, el misterio se hace aquí...
Se hace carne en cada uno, el misterio es existir!

Shell Root

Y que tiene de curiosas esas query's?
Por eso no duermo, por si tras mi ventana hay un cuervo. Cuelgo de hilos sueltos sabiendo que hay veneno en el aire.

Kase

#3
para uno que sabe le son normales...
pero cuando vas comenzando lo normal es creer que sql solo es para almacenar datos, y ni te imaginas que puedes hacer operaciones y otras cosas...
y al desconocer de ellas lo normal es querer implementarlas sobre el lenguaje de programación que usamos..

yo lo postie con la intencion de ver que trucos me pueden compartir...

"y para ver los colores de alguien primero debes mostrar tus colores"

Shell Root

Por eso no duermo, por si tras mi ventana hay un cuervo. Cuelgo de hilos sueltos sabiendo que hay veneno en el aire.

.:UND3R:.


Solicitudes de crack, keygen, serial solo a través de mensajes privados (PM)

Novlucker

Y luego descubrirá los campos calculados y las funciones como datediff :D (por ejemplo para mantener la edad actualizada ;))

Saludos
Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD

"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein

Nakp

esta deberia dar la edad sin tanta vuelta xD (solo mysql ¬¬)

Código (sql) [Seleccionar]
SELECT TIMESTAMPDIFF(YEAR, fecha_nac, NOW()))
Ojo por ojo, y el mundo acabará ciego.

Novlucker

A eso iba :xD
Ms SQL
Código (sql) [Seleccionar]
SELECT DATEDIFF(YEAR,fecha_nac,GETDATE())

Saludos
Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD

"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein