• 0
Sign in to follow this  
LukeSkywalker

Instrução Sql - Dúvida

Question

Prezados Colegas

Preciso realizar uma pesquisa onde o usuário pode escolher uma ou mais categorias e então a pesquisa retornará todos os registros que tenham os códigos passados como parâmetro.

Até agora eu cosigo fazer passando apenas um código e retornar todos os registros que contenham o código passado como parametro, mas e quando o usuário pode passar vários códigos e quer todos os registros quem tenham todos os códigos passados ?

Bom

Será que tem jeito ?

Se alguém puder me ajudar eu agradeço antecipadamente.

Até mais

Luke

Share this post


Link to post
Share on other sites

6 answers to this question

Recommended Posts

  • 0

Luke....você vai me descupando é que sou meio matuto e não entendo muito bem quando as pessoas escrevem certo...será que não daria para você explicar em uma linguagem mais simples...talvez eu possa ajudar.

valou luke

eu não entendi mesmo luke desculpa ai a burrice beleza.

Share this post


Link to post
Share on other sites
  • 0

Estaria falando disso:

SELECT * FROM Produtos WHERE Codigo=1
--Apenas um valor para um parâmetro (campo)
SELECT * FROM Produtos WHERE Codigo=1 OR Codigo=2 OR Codigo=99
--Vários valores para um parâmetro (campo)
--Ou seja, utilize o operador 'OR'

Falows!

Share this post


Link to post
Share on other sites
  • 0

eu acho que com isto vai fumega veio, flo forte abraço por traz

SQL = SQL & " and Codigo Like '%"&Codigo1&"%' or "

SQL = SQL & " and Codigo Like '%"&Codigo2&"%' or "

SQL = SQL & " and Codigo Like '%"&Codigo99&"%'"

Share this post


Link to post
Share on other sites
  • 0

Pelo que entendi você que uma instrução SQL que caso se pesquise uma ou mais palavras ela procure as palavras individualmente, como o site de busca do google por exemplo.

Supondo que a variavel "que" receba as palavras a serem buscadas:

que = Request("que")
if len(que) > 0 then
ObjConn.CursorLocation = 3
'MULT WORDS SEARCH QUERY----------------------------------------------------------------------
    fieldsArray = array("categoria","banda","release")
    tmpSQLString = ""
    que = que & " "
    countStripes = 0
    for fieldsArrayCount = 0 to UBOUND(fieldsArray)
        p0 = 1
        p1 = instr(1,que," ")
        while p1 <> 0
            myText = mid(que,p0,p1-p0)
            if countStripes = 0 then orVar = "" else orVar = " OR"
            tmpSQLString = tmpSQLString & orVar & " " & fieldsArray(fieldsArrayCount) & " LIKE '%" & myText & "%'"
            countStripes = countStripes + 1
            p0 = p1+1
            p1 = instr(p1+1,que," ")
        wend
        tmpSQLString = tmpSQLString & " OR " & fieldsArray(fieldsArrayCount) & " LIKE '%" & mid(que,1,len(que)-1) & "%'"
    next
SQLString = "SELECT * FROM bandas WHERE" & tmpSQLString & " GROUP BY banda HAVING COUNT(*) >= 1 ORDER BY categoria DESC"
'MULT WORDS SEARCH QUERY----------------------------------------------------------------------------------

aqui a instrução SQL é montada dinamicamente a partir do numero de palavras pesquisadas.

:blink:

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this