elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: ¿Eres nuevo? ¿Tienes dudas acerca del funcionamiento de la comunidad? Lee las Reglas Generales


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  Bases de Datos (Moderador: Carloswaldo)
| | | |-+  Recuperar valor de consulta SQL
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Recuperar valor de consulta SQL  (Leído 11,091 veces)
Shell Root
Moderador Global
***
Desconectado Desconectado

Mensajes: 3.724


<3


Ver Perfil WWW
Recuperar valor de consulta SQL
« en: 27 Febrero 2010, 06:29 am »

Bueno, en vista de que retome mi profesion de Desarrollador de Software, cosa que no retomaba desde hace más de 4 ó 5 meses, se me olvido realizar esto en SQL.

Supongamos que tenemos esta consulta.
Código
  1. SELECT COUNT(intIDUsuario) FROM dbo.tblReservas WHERE (intIDUsuario = '1') AND (Estado = 'Activo')

Ahora quiero que en una variable dentro del SQL, recuperar el valor que dá el resultado de la consulta anterior. Tengo que usar Cursores?


En línea

Te vendería mi talento por poder dormir tranquilo.
^Tifa^


Desconectado Desconectado

Mensajes: 2.804


Ver Perfil
Re: Recuperar valor de consulta SQL
« Respuesta #1 en: 27 Febrero 2010, 15:47 pm »

No del todo, porque fijate que estas utilizando COUNT que retorna 1 solo valor entero acorde a la cantidad de registros que encuentres  ;)  esto cabe perfectamente en 1 sola variable dentro del motor solo declara la variable previamente y haz tu consulta:

Código
  1. SELECT COUNT(intIDUsuario) INTO @variable FROM dbo.tblReservas WHERE (intIDUsuario = '1') AND (Estado = 'Activo'
  2.  

Luego ya sabes haces un SELECT @variable para ver la info retornada.

Los cursores lo usaras cuando requieras obtener como respuesta mas de 1 registro, digase que quisieras obtener todos los nombres de los usuarios que ingresaron a un colegio en el anio 2008 por ejemplo, aca sabes que si dices SELECT NOMBRES el te retornara mas de 1 valor, distribuido en distintos campos, entonces ahi si necesitas cursores. Pero en tu caso al utilizar la funcion COUNT estas sumando todos los registros encontrados, para al final retorna 1 solo valor que es la suma de lo encontrado  ;)

Saludo.


En línea

Shell Root
Moderador Global
***
Desconectado Desconectado

Mensajes: 3.724


<3


Ver Perfil WWW
Re: Recuperar valor de consulta SQL
« Respuesta #2 en: 27 Febrero 2010, 18:32 pm »

Es correcto hacer esto?
Código
  1. DECLARE @variable AS INT
  2. SELECT COUNT(intIdTipoUsuario) INTO @variable FROM tblTipoUsuario
  3. PRINT @variable
Porque me dá error en la segunda linea (Sintaxis incorrecta cerca de '@variable')



Ok. Y si el campo no fuese un INT sino un String (Varchar). Por ejemplo:
Código
  1. SELECT strTipoUsuario FROM tblTipoUsuario WHERE (intIdTipoUsuario = 1)
« Última modificación: 27 Febrero 2010, 18:35 pm por Alex@ShellRoot » En línea

Te vendería mi talento por poder dormir tranquilo.
^Tifa^


Desconectado Desconectado

Mensajes: 2.804


Ver Perfil
Re: Recuperar valor de consulta SQL
« Respuesta #3 en: 27 Febrero 2010, 20:00 pm »

Que motor es???? porque eso de declare variable as tal cosa suena a Oracle....

En MySQL es mas sencillo, ni tienes que declarar previamente la variable, bastaria con:

SELECT COUNT(campo) INTO @variable1 FROM TABLA WHERE CAMPO = ALGO

luego

SELECT @variable1
En línea

Shell Root
Moderador Global
***
Desconectado Desconectado

Mensajes: 3.724


<3


Ver Perfil WWW
Re: Recuperar valor de consulta SQL
« Respuesta #4 en: 27 Febrero 2010, 20:18 pm »

Microsoft SQL Server 2008, me olvidaba, estoy con Store Procedure
« Última modificación: 27 Febrero 2010, 20:35 pm por Alex@ShellRoot » En línea

Te vendería mi talento por poder dormir tranquilo.
^Tifa^


Desconectado Desconectado

Mensajes: 2.804


Ver Perfil
Re: Recuperar valor de consulta SQL
« Respuesta #5 en: 27 Febrero 2010, 20:54 pm »

No utilizo SQL Server. Pero buscando por ahi en internet una instruccion similar:

http://www.eggheadcafe.com/software/aspnet/30322497/store-count-into-a-variab.aspx

Haber si te sirve  :P
En línea

Shell Root
Moderador Global
***
Desconectado Desconectado

Mensajes: 3.724


<3


Ver Perfil WWW
Re: Recuperar valor de consulta SQL
« Respuesta #6 en: 27 Febrero 2010, 20:58 pm »

Simon, eso era lo que necesitaba.  :-*

Código
  1. DECLARE @intCount INT
  2. SET @intCount= (SELECT COUNT(intIdTipoUsuario) FROM tblTipoUsuario)
  3. PRINT @intCount
Resultado:
Código:
3

Código
  1. DECLARE @srtTipoUsuario AS VARCHAR(50)
  2. SET @srtTipoUsuario = (SELECT strTipoUsuario FROM tblTipoUsuario WHERE (intIdTipoUsuario = 1))
  3. PRINT @srtTipoUsuario
Resultado:
Código:
Administrador
En línea

Te vendería mi talento por poder dormir tranquilo.
^Tifa^


Desconectado Desconectado

Mensajes: 2.804


Ver Perfil
Re: Recuperar valor de consulta SQL
« Respuesta #7 en: 27 Febrero 2010, 21:09 pm »

Bueno siempre es buscarle la vuelta al asunto

Un besito para mi  :D

Grax.
En línea

[ Alberto]
Wiki

Desconectado Desconectado

Mensajes: 1.232



Ver Perfil
Re: Recuperar valor de consulta SQL
« Respuesta #8 en: 22 Marzo 2010, 00:12 am »

puedes meterlo tambien en la consulta

Código:
DECLARE @intCount int
SELECT @intCount = COUNT(intIdTipoUsuario) FROM tblTipoUsuario
En línea

Debemos de hacer todas las cosas sencillas, excepto las cosas sencillas
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Recuperar valor (lista) seleccionado combobox
PHP
gusixavi 1 3,637 Último mensaje 29 Abril 2012, 03:56 am
por engel lex
utilizar valor de consulta en otra consulta
PHP
demonstrator 0 2,048 Último mensaje 12 Septiembre 2014, 02:59 am
por demonstrator
Recuperar un valor de un hashtable que tiene diferentes values
Desarrollo Web
jabedoya 0 1,988 Último mensaje 23 Octubre 2014, 20:58 pm
por jabedoya
Recuperar un valor de una select con php
PHP
borja.moreno 1 3,943 Último mensaje 22 Febrero 2019, 18:56 pm
por ThunderCls
Recuperar valor de token
Programación General
KateLibby 1 3,667 Último mensaje 4 Enero 2022, 12:21 pm
por KateLibby
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines