Foro de elhacker.net

Programación => Bases de Datos => Mensaje iniciado por: 50l3r en 20 Diciembre 2010, 21:09 pm



Título: Ayuda con sentencia bastante dificil
Publicado por: 50l3r en 20 Diciembre 2010, 21:09 pm
Muy buenas, necesito una sentencia en sql un poco compleja por mi parte:

Necesito que a partir de un numero, por ejemplo 3:

de esta lista me saque los 4 mas cercanos, ya sean negativos a este o positivos, ejemplo:

1,18,-3,5,2,11,10,15

me sacaria: 2,1,5,-3

alguien sabria como realizar eso en sql? o tengo que ayudarme de php?¿




Título: Re: Ayuda con sentencia bastante dificil
Publicado por: braulio-- en 20 Diciembre 2010, 22:40 pm
Código:
SELECT numero FROM numeros WHERE numero=numeroUSUARIO OR numero=numeroUSUARIO+1 OR numero=numeroUSUARIO-1 OR ...
Probablemente haya una forma mas fácil usando funciones predefinidas del motor de la base de datos pero yo no la conozco.

/* MODIFICO */
Vale, no leí bien lo que quería. Lo siento.


Título: Re: Ayuda con sentencia bastante dificil
Publicado por: Novlucker en 21 Diciembre 2010, 00:41 am
Eso no es algo que se haga desde el motor de la bbdd sino desde la lógica de tu aplicación, en este caso desde PHP.

Saludos


Título: Re: Ayuda con sentencia bastante dificil
Publicado por: RedZer en 21 Diciembre 2010, 01:49 am
Eso no es algo que se haga desde el motor de la bbdd sino desde la lógica de tu aplicación, en este caso desde PHP.

Saludos


lo mismo pense cuando vi el post de 50l3r


Título: Re: Ayuda con sentencia bastante dificil
Publicado por: 50l3r en 21 Diciembre 2010, 01:56 am
me lo temia, queria realizarlo a traves de sql si se pudiese asi me ahorraba lineas de code php y tendria una buena estructura nada mas sacar la query

nada, a darle a php, gracias un saludo


Título: Re: Ayuda con sentencia bastante dificil
Publicado por: Shell Root en 21 Diciembre 2010, 04:16 am
Pero quizás pueda hacerse desde un Store Procedure.


Título: Re: Ayuda con sentencia bastante dificil
Publicado por: JuanRaGD en 30 Diciembre 2010, 14:20 pm
Eso no es algo que se haga desde el motor de la bbdd sino desde la lógica de tu aplicación, en este caso desde PHP.

Saludos


Me parece correcto el comentario pensando que la persona quiere conservar el metodo en la logica, porque en caso de tener tus metodos en la base de datos, si cambias de bbdd los pierdes.
Pero todo depende en el caso y el porte del trabajo. Se pude hacer en un Store Procedure dependiendo el caso si es un proyecto chico o para entregar al curso y si te es mas facil no esta mal, yo lo haria en la aplicacion porque no me llevo bien con SQL Server jejeje

Saludos.