Visual Basic - ESTE SELECT ME TIENE LOCO... URGENTE POR FAVOR...

Life is soft - evento anual de software empresarial
 
Vista:

ESTE SELECT ME TIENE LOCO... URGENTE POR FAVOR...

Publicado por w_rene (12 intervenciones) el 30/09/2002 06:38:00
Necesito hacer una consulta de un criterio que puede estar contenido en uno de 3 diferente campos de una tabla...
tengo una tabla con los sig. campos:

nombre, apellido, edad. direccion.... medicamento1, medicamento2, medicamento3...

en los campos medicamentoX tengo el nombre de un medicamento cualquiera escogido desde un listbox, este alimenta el registro con 1 a 3 marcas dependiendo de los que use el paciente y se guardan en esos campos medicamento1 (si solo tiene un medicamento) medicamento2 (si tiene dos medicamentos entonces utiliza el 1 y el 2) y medicamento3( si son 3)... (espero que me hayan entendido..)

el problema es al hacer la consulta pues necesito que me diga segun una seleccion si en los registros coincide alguno de los 3 campos medicamento con el criterio seleccionado...
... es decir si selecciono Aspirina me debe buscar si en alguno de los registros en los campos medicamento(1,2 ó 3) se encuentra dicho marca de medicamento...

adjunto el codigo que tengo..

consmarca = "SELECT Nombres, PriApellido, SecApellido, Edad, Ciudad FROM TablaAfiliados WHERE (((MarcaInsul1)='" & DBCombo1.BoundText & ")) or (((MarcaInsul2)='" & DBCombo1.BoundText & ")) or (((MarcaInsul3)='" & DBCombo1.BoundText & "'"

no se como plantearlo..... o como hacerlo , como colocar la clausula "OR"

en acces la consulta que me bota es:

SELECT TablaAfiliados.Nombres, TablaAfiliados.PriApellido, TablaAfiliados.SecApellido, TablaAfiliados.Edad, TablaAfiliados.Sexo, TablaAfiliados.Ciudad, TablaAfiliados.MarcaMedOral1, TablaAfiliados.MarcaMedOral2, TablaAfiliados.MarcaMedOral3, TablaLabMedOral.Laboratorio%0
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

...CONTINUACION...

Publicado por w_rene (12 intervenciones) el 30/09/2002 06:39:49
EL CODIGO EN ACCESS

SELECT TablaAfiliados.Nombres, TablaAfiliados.PriApellido, TablaAfiliados.SecApellido, TablaAfiliados.Edad, TablaAfiliados.Sexo, TablaAfiliados.Ciudad, TablaAfiliados.MarcaMedOral1, TablaAfiliados.MarcaMedOral2, TablaAfiliados.MarcaMedOral3, TablaLabMedOral.Laboratorio
FROM TablaLabMedOral INNER JOIN TablaAfiliados ON (TablaLabMedOral.MarcaMedOral = TablaAfiliados.MarcaMedOral1) or (TablaLabMedOral.MarcaMedOral = TablaAfiliados.MarcaMedOral2) or (TablaLabMedOral.MarcaMedOral = TablaAfiliados.MarcaMedOral3)
WHERE (((TablaAfiliados.MarcaMedOral1)="consmarca")) OR (((TablaAfiliados.MarcaMedOral2)="consmarca")) OR (((TablaAfiliados.MarcaMedOral3)="consmarca"))
ORDER BY TablaLabMedOral.Laboratorio DESC;
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:ESTE SELECT ME TIENE LOCO... URGENTE POR FAVOR

Publicado por ggiro (2 intervenciones) el 30/09/2002 18:47:18
Amigo mio no seri mejor que crees una tabla llamada Medicamentos con campos IdMedicamento, NombreMedicamento y otra tabla además llamada por decir Recetas tenienddo campos como IdReceta, Idpaciente, IdMedicamento. Así por cada medicamento que se le da a un paciente automaticamente se agregue un nunuevo registro a la tabla Recetas y asi tu consulta seria mas sencilla y puede recibir mas de 3 medicamentos el paciente
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:ESTE SELECT ME TIENE LOCO... URGENTE POR FAVOR

Publicado por Richi317 (95 intervenciones) el 01/10/2002 14:36:13
Lo que dice ggiro es EXACTAMENTE lo que tienes que hacer.
Ni más ni menos.
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