Consulta sql

04/10/2006 - 08:51 por Catalin Lungu | Informe spam
Hola,
Necesito construir una sentencia que me devuelva cada nombre de campo de una
tabla que tiene relación con otra tabla, también el nombre de la tabla y del
campo al que está relacionado.
Por ej.:

tabla1 (c1, c2, codcli)
tabla2(codigo, c3, c4)
Relacion: codcli --> codigo

Resultado:
codcli, tabla2, codigo

Muchas gracias de antemano.

Preguntas similare

Leer las respuestas

#1 Miguel Egea
04/10/2006 - 09:30 | Informe spam
¿es un trabajo para clase o algo así? tienes que usar un inner join, el
nombre de la tabla lo tienes que poner como un literal
Select tabla1.codcli,tabla1.c1, 'Tabla2' Tabla, Tabla2.codigo
from tabla1 inner join Tabla2 on tabla1.codcli=Tabla2.codigo
"Catalin Lungu" wrote in message
news:
Hola,
Necesito construir una sentencia que me devuelva cada nombre de campo de
una tabla que tiene relación con otra tabla, también el nombre de la tabla
y del campo al que está relacionado.
Por ej.:

tabla1 (c1, c2, codcli)
tabla2(codigo, c3, c4)
Relacion: codcli --> codigo

Resultado:
codcli, tabla2, codigo

Muchas gracias de antemano.

Respuesta Responder a este mensaje
#2 Catalin Lungu
04/10/2006 - 09:42 | Informe spam
No no es para la clase y el problema es que sobre la tabla2 no se nada. A mi
se me da la tabla 1 y necesito
saber cuales de los campos se relacionan con otras tablas, con que tablas y
con que campos de sas tablas.

Un saludo.


"Miguel Egea" escribió en el mensaje
news:
¿es un trabajo para clase o algo así? tienes que usar un inner join, el
nombre de la tabla lo tienes que poner como un literal
Select tabla1.codcli,tabla1.c1, 'Tabla2' Tabla, Tabla2.codigo
from tabla1 inner join Tabla2 on tabla1.codcli=Tabla2.codigo
"Catalin Lungu" wrote in message
news:
Hola,
Necesito construir una sentencia que me devuelva cada nombre de campo de
una tabla que tiene relación con otra tabla, también el nombre de la
tabla y del campo al que está relacionado.
Por ej.:

tabla1 (c1, c2, codcli)
tabla2(codigo, c3, c4)
Relacion: codcli --> codigo

Resultado:
codcli, tabla2, codigo

Muchas gracias de antemano.





Respuesta Responder a este mensaje
#3 Catalin Lungu
04/10/2006 - 09:49 | Informe spam
Ahora con lo tengo hago la mitad pero me faltan los nombres de los campos
que se relacionan de las 2 tablas.

SELECT
RC.CONSTRAINT_NAME,
RC.UNIQUE_CONSTRAINT_NAME,
FK.TABLE_NAME AS TABLE_NAME_FK,
PK.TABLE_NAME AS TABLE_NAME_PK
FROM INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS AS RC
JOIN INFORMATION_SCHEMA.TABLE_CONSTRAINTS FK ON
RC.CONSTRAINT_SCHEMA = FK.CONSTRAINT_SCHEMA
AND RC.CONSTRAINT_NAME = FK.CONSTRAINT_NAME
JOIN INFORMATION_SCHEMA.TABLE_CONSTRAINTS PK ON
RC.UNIQUE_CONSTRAINT_SCHEMA = PK.CONSTRAINT_SCHEMA
AND RC.UNIQUE_CONSTRAINT_NAME = PK.CONSTRAINT_NAME
WHERE FK.TABLE_NAME = 'ACCIONES'
Respuesta Responder a este mensaje
#4 Carlos Sacristán
04/10/2006 - 09:55 | Informe spam
La verdad es que no entiendo muy bien para qué necesitas hacer eso.
¿Podrías explicar exactamente qué es lo que quieres obtener?


Un saludo

-
"Sólo sé que no sé nada. " (Sócrates)

"Catalin Lungu" escribió en el mensaje
news:%
No no es para la clase y el problema es que sobre la tabla2 no se nada. A
mi se me da la tabla 1 y necesito
saber cuales de los campos se relacionan con otras tablas, con que tablas
y con que campos de sas tablas.

Un saludo.


"Miguel Egea" escribió en el mensaje
news:
¿es un trabajo para clase o algo así? tienes que usar un inner join, el
nombre de la tabla lo tienes que poner como un literal
Select tabla1.codcli,tabla1.c1, 'Tabla2' Tabla, Tabla2.codigo
from tabla1 inner join Tabla2 on tabla1.codcli=Tabla2.codigo
"Catalin Lungu" wrote in message
news:
Hola,
Necesito construir una sentencia que me devuelva cada nombre de campo de
una tabla que tiene relación con otra tabla, también el nombre de la
tabla y del campo al que está relacionado.
Por ej.:

tabla1 (c1, c2, codcli)
tabla2(codigo, c3, c4)
Relacion: codcli --> codigo

Resultado:
codcli, tabla2, codigo

Muchas gracias de antemano.









Respuesta Responder a este mensaje
#5 Catalin Lungu
04/10/2006 - 12:09 | Informe spam
Ya lo tengo por si a alguien le hace falta.

select kcu.column_name as campo_local, ccu.table_name as tabla_ref,
ccu.column_name as campo_ref from INFORMATION_SCHEMA.table_constraints tc
inner join INFORMATION_SCHEMA.KEY_COLUMN_USAGE kcu on kcu.constraint_name =
tc.constraint_name
inner join INFORMATION_SCHEMA.referential_constraints rc on
rc.constraint_name = tc.constraint_name
inner join INFORMATION_SCHEMA.CONSTRAINT_COLUMN_USAGE ccu on
ccu.constraint_name = tc.constraint_name
where tc.table_name = 'acciones'
Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida