Utilizando SQL Dinâmico
Veja nesta dica como trabalhar com SQL Dinâmico.
SQL Dinâmico
Nós precisamos algumas vezes utilizar um mesmo SELECT para selecionar diferentes registros considerando condições de filtro diferentes. Uma alternativa é utilizar duas instruções SELECT com diferentes condições de busca na cláusula WHERE. Outra é utilizar SQL Dinâmico.
Por exemplo, considere a busca abaixo:
SELECT *
FROM table_1
WHERE fld_date = 200301
Agora, o que aconteceria se você precisasse localizar um determinado registro para a data de 200310? Teria que elaborar uma condição de filtro para cada registro?
Se você utilizar uma variável aux_ID para setar dinamicamente o valor de um ID, você terá um comando SQL que poderá ser criado dinamicamente:
SELECT fld_id, fld_name, fld_lastname, fld_date, .....
FROM table_1
WHERE fld_date = 200301 AND
fld_id = CASE
WHEN :aux_id > 0
THEN aux_id
ELSE fld_id
END
Artigos relacionados
-
Artigo
-
Artigo
-
Artigo
-
Artigo
-
Artigo