Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Freisleben

[Resolvido] Operadores lógicos AND e OR

Recommended Posts

Ola Amigos,

 

Tenho o script abaixo e na ultima condição tab_grupo_emp.id_lote = '$refLote' preciso trazer o id_lote E OU id_usuario, porque na aplicação o usuario pode filtrar por Lote, por Usuário ou por Ambos.

 

SELECT 
id_grupo,
cod_grupo,
nome_grupo,
tab_grupo_emp.id_lote,
nome_lote,

( SELECT nome
  FROM tab_hist_diario_bordo, tab_usuario
  WHERE tab_grupo_emp.id_grupo = tab_hist_diario_bordo.id_grupo
  AND tab_hist_diario_bordo.id_usuario = tab_usuario.id_usuario) AS nome,

( SELECT tab_hist_diario_bordo.id_usuario
  FROM tab_hist_diario_bordo , tab_usuario
  WHERE tab_grupo_emp.id_grupo = tab_hist_diario_bordo.id_grupo
  AND tab_hist_diario_bordo.id_usuario = tab_usuario.id_usuario) AS id_usuario,

( SELECT date_format(dta_hist_diario_bordo, '%d/%m/%Y %h:%i') AS dta_hist_diario_bordo
  FROM tab_hist_diario_bordo, tab_usuario
  WHERE tab_grupo_emp.id_grupo = tab_hist_diario_bordo.id_grupo
  AND tab_hist_diario_bordo.id_usuario = tab_usuario.id_usuario) AS dta_hist_diario_bordo,

( SELECT status_diario_bordo
  FROM tab_hist_diario_bordo,tab_status_diario_bordo, tab_usuario
 
  WHERE tab_grupo_emp.id_grupo = tab_hist_diario_bordo.id_grupo
  AND tab_hist_diario_bordo.id_usuario = tab_usuario.id_usuario
  AND tab_hist_diario_bordo.id_status_diario_bordo = tab_status_diario_bordo.id_status_diario_bordo) AS status_diario_bordo



FROM tab_grupo_emp, tab_lote_migracao
WHERE tab_grupo_emp.id_lote = tab_lote_migracao.id_lote
AND tab_grupo_emp.id_lote = '$refLote'

Compartilhar este post


Link para o post
Compartilhar em outros sites

FAz assim:

 

mysql_query("... AND id_lote = id_usuario OR id_lote = id_usuario");

Não tem como colocar AND OR juntos... você deve fazer 2 vezes..

 

cara, ele tá no tópico de mysql.. e mesmo assim dá pra perceber qual linguagem usa.. ¬¬

Compartilhar este post


Link para o post
Compartilhar em outros sites

Obrigado Amigos,

 

Acabo de resolver meu problema. Segue solução.

 

Verifico se existe a variavel se existe eu concateno o script sql.

 

.
.
.
FROM tab_grupo_emp, tab_lote_migracao
WHERE tab_grupo_emp.id_lote = tab_lote_migracao.id_lote";

if (isset($codGrupo) && $codGrupo != "") {
	$sql .= " AND cod_grupo = '".$codGrupo."'";
}

if (isset($refLote) && $refLote != "") { 
//Tem que ter o espaço do AND
	$sql .= " AND tab_grupo_emp.id_lote ='". $refLote. "'";
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.