Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » SQL Server »

Procedimiento almacenado en 3 tablas

Estas en el tema de Procedimiento almacenado en 3 tablas en el foro de SQL Server en Foros del Web. HOLA SOY NUEVO EN EL FORO...PERO DE ANTEMANO SI ME RESPONDE SE LO AGRADESCO DESDE UN INICIO SI NO PUES NI MODO...AUN ASI GRACIAS.. MI ...
  #1 (permalink)  
Antiguo 03/04/2012, 18:38
 
Fecha de Ingreso: abril-2012
Ubicación: MEXICO
Mensajes: 2
Antigüedad: 12 años
Puntos: 0
Pregunta Procedimiento almacenado en 3 tablas

HOLA SOY NUEVO EN EL FORO...PERO DE ANTEMANO SI ME RESPONDE SE LO AGRADESCO DESDE UN INICIO SI NO PUES NI MODO...AUN ASI GRACIAS..

MI DUDA ES LA SIGUIENTE:

TENGO UNA BASE DE DATOS LLAMADA

SUPERMERCADO

en la cual tengo 3 tablas llamadas


DEPTO_FARMACIA , DEPTO_PRODUCTOS, DPTO_VINOS

en las 3 tablas tengo un campo llamdao : id_nombre

Y QUIERO SABER SI PUEDO BUSCAR AL MISMO TIEMPO EN LAS 3 TABLAS UN REGISTRO ES DECIR SI EXISTE UN PROCEDIMIETO ALMACENADO PARA BUSCAR UN REGISTRO PERO EN LAS 3 TABLAS AL MISMO TIEMPO PARA AGILIZAR LA BUSQUEDA Y AHORRA TIEMPO... BUSCAR CONFORME SE ESCRIBE CREOO QUE ES CON EL COMANDO LIKE + % PERO NO ME QUEDA Y NO ME QUEDA PORQUE COLOCO LA LETRA (N) y ME TENDRIA QUE ARROJAR TODOS LOS PRODUCTOS EXISTENTES QUE COMIENCEN CON LA LETRA N DE LAS 3 TABLAS ....BUSQUEDA RAPIDA....COMO LO HACE EL BUSCADOR DE (GOOGLE) CONFORME SE ESCRIBE... TAMBIEN CREO QUE EXISTE UNA CONSULTA PERO DE DE TODA LA BD PERO ESA NO LA CONOSCOOO...ESA SERIA MI DUDAD ES POSIBLE REALIZAR UN PROCEDIMIENTO ALMACENADO PARA BUSCAR AL MISMO TIEMPO EN 3 TABLAS DISTINTAS UN REGISTRO EN UN CAMPO LLAMADO (id_nombre) Y SI EXISTE PUDIERAN POSTEARLA EN EL FORO O NO EXISTE SOLUCION????

...ACLARO MIS 3 TABLAS NO ESTAN RELACIONADAS YA QUE NO ENCUENTOR LA SILUCION AL PROBLEMA....AGRADECERIA ME AYUDARANNNN... EN UN INVREIBLA FORO SPERO RESPUESTAS...GRACIAS DE ANTE MANOO... Y SALU222
  #2 (permalink)  
Antiguo 03/04/2012, 19:34
Avatar de matanga  
Fecha de Ingreso: octubre-2007
Ubicación: España
Mensajes: 1.091
Antigüedad: 16 años, 6 meses
Puntos: 85
Respuesta: Procedimiento almacenado en 3 tablas

Esto varía según el caso, puede ser eficiente leer las 3 tablas al mismo tiempo pero también leerlas por separado, suponiendo que buscas por el campo Nombre en depto_farmacia, depto_productos y depto_vinos, puedes:

1. Leerlas al mismo tiempo cuando los registros que cumplen con la condición del where pueden estar en cualquiera de las tablas.

Código:
create procedure p1
is
begin
 select * from
 (
  select 'depto_farmacia' as tabla, nombre
   from  depto_farmacia
  union all
  select 'depto_productos' as tabla, nombre
   from  depto_productos
  union all
  select 'depto_vinos' as tabla, nombre
   from  depto_vinos
 ) t
 where nombre like '%un_nombre%
end
go
2. Leerlas por separado cuando los registros que cumplen con la condición del where solo pueden estar en una de las tablas, por ejemplo, si el nombre "Aspirina" solo se encuentra en depto_farmacia ya no es necesario buscar en el resto de las tablas.

Código:
create procedure p1
is
begin
  select 'depto_farmacia' as tabla, nombre
   from  depto_farmacia
  where nombre like '%un_nombre%

  if (@@rowcount = 0)
  select 'depto_productos' as tabla, nombre
   from  depto_farmacia
  where nombre like '%un_nombre%

  if (@@rowcount = 0)
  select 'depto_vinos' as tabla, nombre
   from  depto_farmacia
  where nombre like '%un_nombre%
end
go
Saludos
  #3 (permalink)  
Antiguo 04/04/2012, 16:48
 
Fecha de Ingreso: abril-2012
Ubicación: MEXICO
Mensajes: 2
Antigüedad: 12 años
Puntos: 0
Respuesta: Procedimiento almacenado en 3 tablas

hola ke tal "matanga" pero al usar el procedimiento que pusiste es necesario que esten relacionadas las 3 tablas


es decir como lo mencione anteriormete las 3 tablas no estan relacionadas

depto_farmacia depto_productos depto_vinos


esas 3 tablas no las e relacionado

lo similar en ellas esque tiene un campo llamado id_nombre pero no es una llave foranea a lo que voy es::

si es necesario realacionar las 3 tablas como deberia quedar la relacion y si no es necesario relacionar las tablas aun asi funcionaraia el procedimiento almacenado que pusiste.....

de antemano muchas gracias.... salud2 spero repsuesta... XD

Etiquetas: bd, procedimiento, registro, tabla, tablas, almacenar, campos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 19:05.