Foros del Web » Programando para Internet » ASP Clásico »

Relación de tablas en la búsqueda

Estas en el tema de Relación de tablas en la búsqueda en el foro de ASP Clásico en Foros del Web. Buenas gente! Vengo con una pregunta a ver si me pueden dar una mano. He estado perfeccionando un buscador con la ayuda del usuario macedo. ...
  #1 (permalink)  
Antiguo 21/08/2005, 19:51
 
Fecha de Ingreso: julio-2003
Mensajes: 43
Antigüedad: 20 años, 10 meses
Puntos: 0
Información Relación de tablas en la búsqueda

Buenas gente!

Vengo con una pregunta a ver si me pueden dar una mano.
He estado perfeccionando un buscador con la ayuda del usuario macedo. El buscador anda a la perfección!!!!! :D
Lo que me surge ahora es otro problema.

Hagan de cuenta q tengo 2 tablas (simplifico un poco sino es un choclo)
Tabla usuarios:
ID_user | nombre_user | id_area
1 | pepe | 2
2 | carlos | 1

Tabla area:
ID_area | nombre_area
1 | sistemas
2 | rrhh

Yo la busqueda la realizo sobre la tabla usuarios con utilizando el comando "like"
Ej: SELECT * FROM usuarios WHERE nombre_user LIKE '%"pepe"%' "

Hasta ahí vamos bien, ok?
Eso me traería todos los campos de la tabla usuarios donde este el nombre de usuario pepe, este sería el resultado:

ID_user | nombre_user | id_area
1 | pepe | 2

Mi gran duda es, como hago ahora para que en vez de que me aparezca el id_area = 2, me salga el nombre de area correspondiente esa area, en este caso seria 2 = rrhh.
Quiero q me aparezca esto en el Recordset
ID_user | nombre_user | nombre_area
1 | pepe | rrhh

Espero ser claro.
y gracias de antemano.
  #2 (permalink)  
Antiguo 21/08/2005, 20:19
Avatar de trasgukabi  
Fecha de Ingreso: septiembre-2004
Mensajes: 2.749
Antigüedad: 19 años, 9 meses
Puntos: 18
select usuarios.nombre_user,area.nombre_area from usuarios u inner join area a on u.id_area=a.id_area
  #3 (permalink)  
Antiguo 21/08/2005, 20:42
 
Fecha de Ingreso: julio-2003
Mensajes: 43
Antigüedad: 20 años, 10 meses
Puntos: 0
Es la única forma en que puedo solucionarlo? usando inner join?
jajaj, lo pensé de hecho es lo q se debe utilizar pero tendría que hacer el código de la búsqueda totalmente de otra forma

porq?... porq la búsqueda es sobre varios campos a elección del usuario donde puede o no completar alguno de los campos de la búsqueda.
Miren parte del código de la búsqueda... donde pondrían los inner join para cada tabla ?

Código:
Function BuscarWf

 'Genero query
 sql="SELECT * FROM workflow WHERE "
 'Compruebo que el campo NOMBRE no esté vacio para agregar el registro en la búsqueda
 If len(Request.Form("nombre"))>0 then
   bnombre=Split(Trim(Replace(Request.Form("nombre"),"'"," ")))
   sql=sql&"nombre_wf LIKE '%"&bnombre(0)&"%' "
    For i=1 to Ubound(bnombre)
     sql=sql&" OR nombre_wf LIKE '%"&bnombre(i)&"%' "
    Next
  orand="AND "
 End If 
 
 'Compruebo que el campo DESCRIPCION no esté vacio para agregar el registro en la búsqueda
 If len(Request.Form("descripcion"))>0 then
   bdescripcion=Split(Trim(Replace(Request.Form("descripcion"),"'"," ")))
   sql=sql&orand&"descripcion_wf LIKE '%"&bdescripcion(0)&"%' "
    For i=1 to Ubound(bdescripcion)
     sql=sql&" OR descripcion_wf LIKE '%"&bdescripcion(i)&"%' "
    Next
  orand="AND "
 End If 
 
 'Compruebo que el campo REFERENCIA no esté vacio para agregar el registro en la búsqueda
 If len(Request.Form("referencia"))>0 then
   breferencia=Split(Trim(Replace(Request.Form("referencia"),"'"," ")))
   sql=sql&orand&"referencia LIKE '%"&breferencia(0)&"%' "
    For i=1 to Ubound(breferencia)
     sql=sql&" OR referencia LIKE '%"&breferencia(i)&"%' "
    Next
  orand="AND "
 End If
  #4 (permalink)  
Antiguo 21/08/2005, 22:11
Avatar de trasgukabi  
Fecha de Ingreso: septiembre-2004
Mensajes: 2.749
Antigüedad: 19 años, 9 meses
Puntos: 18
entre "FROM workflow" y " WHERE ", claro
  #5 (permalink)  
Antiguo 22/08/2005, 09:59
 
Fecha de Ingreso: julio-2003
Mensajes: 43
Antigüedad: 20 años, 10 meses
Puntos: 0
Lo he logrado, gracias por la mano, era sencillo pero estaba enseguecido.

Otra pregunta para no crear un nuevo hilo ya q estamos hablando de lo mismo.
Como hago una sentencia SQL para obtener la cantidad de días restantes.

O sea, hoy es 22/08 y quiero saber cuantos días restan para el 25/08.
Esto lo necesito en SQL no puedo usar ASP ni lenguajes de programación.
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 01:21.