Foros del Web » Programación para mayores de 30 ;) » Programación General »

formato consulta sql

Estas en el tema de formato consulta sql en el foro de Programación General en Foros del Web. estoy buscando la manera de buscar multiples palabras a la vez por medio de ADO, en SQL he revisado y la linea correcta deberia de ...
  #1 (permalink)  
Antiguo 02/12/2016, 21:07
 
Fecha de Ingreso: abril-2005
Ubicación: Piura - Perú
Mensajes: 189
Antigüedad: 19 años, 7 meses
Puntos: 0
formato consulta sql

estoy buscando la manera de buscar multiples palabras a la vez por medio de ADO, en SQL he revisado y la linea correcta deberia de tener el siguiente formato en VB6


[CODE]
SELECT producto FROM cotizaciones WHERE producto LIKE '%palabra1% AND producto LIKE '%palabra2%'
CODE]

y con esta consulta muestra filas que contenta ambas palabras, pero si el codigo ingresado por un INPUTBOX no se la cantidad de palabras se debe determinar la cantidad de palabras
habia visto este codigo interesante

Código:
Sub separar(texto As String)
Dim s, s1, l As String
Dim i As Integer
s = texto
For i = 1 To Len(s) + 1
    l = Mid(Mid(s, 1, i), i, 1)
    If ((l = " ") Or (l = "")) Then
        texto = texto & " AND producto LIKE '%" & s1 & "%'"
        s1 = ""
    Else
        s1 = s1 + l
    End If
Next
End Sub
el problema esta que si yo coloco por ejemplo

rs1.Open "select producto from cotizaciones WHERE " & separar (variable_INPUTBOX) , Conn

el resultado sale de la rs asi :

select producto from cotizaciones WHERE AND producto LIKE '%palabra1%' AND producto LIKE '%palabra2%' AND producto LIKE '%palabra3%'

siendo el Error un AND de más en la primera palabra, alguna idea para el codigo?
  #2 (permalink)  
Antiguo 14/12/2016, 00:56
 
Fecha de Ingreso: noviembre-2002
Ubicación: DF
Mensajes: 1.056
Antigüedad: 22 años
Puntos: 37
Respuesta: formato consulta sql

Yo lo hago asi:
strWhere = ""
While
if strWhere<>"" then strWhere=strWhere & " AND"
strWhere = strWhere & " producto LIKE '%" & s1 & "%'"
end while

if strWhere<>"" then
' strSql es otra variable, la que contiene el select sin el where
strSql = strSql & " WHERE " & strWhere
end if

Etiquetas: formato, sql, vb6
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 12:42.