SQL - Consulta SQL

 
Vista:

Consulta SQL

Publicado por gfr (8 intervenciones) el 03/08/2006 12:59:35
Hola estoy intentado crear una consulta que me haga lo siguinte:
En una tabla tengo un campo de texto (descripcion), donde pongo texto abierto, y en otra tabla tengo un campo llamdo responsable, lo que me gustaria poder hacer mediante SQL es que la consulta me mostrara todos los registros de la tabla1 que contienen en el campo descripcion el campo resposable.
Para ello he pensado utilizar la clausula like
Si pongo esto:
SELECT p.descripcio, p.nom, p.codi
FROM procediment p
join proces on p.fill_de=proces.idproces
where p.descripcio like '%Responsable1%'
Me funciona perfectamente me muestra todos aquellos registros que contienen en el campo descripcio la palabra "Responsable", pero si lo que hago es cambiar el string "Responsable1" por un campo no me funciona:
SELECT p.descripcio, p.nom, p.codi
FROM procediment p
join proces on p.fill_de=proces.idproces
where p.descripcio like proces.responsable.

Como lo puedo hacer ??
Saludos,
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Consulta SQL

Publicado por Isaías (5072 intervenciones) el 03/08/2006 20:56:55
Debe funcionar:

SELECT p.descripcio, p.nom, p.codi
FROM procediment p
join proces on p.fill_de=proces.idproces
where exists (select responsable from proces)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Consulta SQL

Publicado por gfr (8 intervenciones) el 04/08/2006 08:27:42
Hola,
Creo que esto que me has dicho no me sirve ...
Mi duda es como puedo hacer para comprovar que en un campo de texto contiene el valor de otro campo.
Me explico:
Tengo un campo de texto campo1 de la tabla A donde hay escrito: "hola esto es una prueba ,...." y en otra tabla (B) tengo otro campo de texto Campo2 con la palabra "esto", lo que me gustaria hacer /en el where de la consulta) es que me mirara si el campo1 contiene el campo2.
Si lo hago con el like:
where a.campo1 like '%esto%'
Aqui me mostrara todos los registros donde el campo1 de la tabla A contenga la palabra esto o parecido.
Lo que yo quiero hacer es lo mismo pero substituir el '%esto%' por el campo2 de la tabla b, entonces si pongo:
where a.campo1 like b.campo2 No me funciona.
Se puede hacer ??
Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Consulta SQL

Publicado por Isaías (5072 intervenciones) el 04/08/2006 17:43:21
A menos de que intentes asi:

SELECT p.descripcio, p.nom, p.codi
FROM procediment p
join proces on p.fill_de=proces.idproces
where p.descripcio LIKE (SELECT '%'+descripcio+'%' FROM proces)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar