Query php does not show expected result

-1

I have here a problem with a query because I ask to show all the fields that a certain condition that in a column is written 'Lisbon', but the result is: Lisbon and port.

Query:

Select * From tb_trabalhador WHERE  (AlvaraNumero = 0 or AlvaraNumero is NULL)  or 
(AlvaraValidade='' or AlvaraValidade is Null or AlvaraValidade='0000-00-00') or (AlvaraAnexo='' or AlvaraAnexo is Null)
 or AcidenteNumero = 0 or (AcidenteValidade='' or AcidenteValidade is Null or AcidenteValidade='0000-00-00')
 or (AcidenteAnexo='' or AcidenteAnexo is Null) or SeguroNumero = 0 or (SeguroValidade='' or SeguroValidade is Null or SeguroValidade='0000-00-00' )
 or (SeguroAnexo='' or SeguroAnexo is Null) or InstaladorNumero = 0 or (InstaladorValidade='' or InstaladorValidade is Null or InstaladorValidade='0000-00-00')
 or (InstaladorAnexo='' or InstaladorAnexo is Null)  AND tb_trabalhador.distrito = 'Lisboa'
    
asked by anonymous 11.04.2014 / 11:09

1 answer

2

Just add one (after the where and close) before and, so you can apply the and to all previous possible cases.

Select * From tb_trabalhador WHERE  ((AlvaraNumero = 0 or AlvaraNumero is NULL)  or 
(AlvaraValidade='' or AlvaraValidade is Null or AlvaraValidade='0000-00-00') or (AlvaraAnexo='' or AlvaraAnexo is Null)
 or AcidenteNumero = 0 or (AcidenteValidade='' or AcidenteValidade is Null or AcidenteValidade='0000-00-00')
 or (AcidenteAnexo='' or AcidenteAnexo is Null) or SeguroNumero = 0 or (SeguroValidade='' or SeguroValidade is Null or SeguroValidade='0000-00-00' )
 or (SeguroAnexo='' or SeguroAnexo is Null) or InstaladorNumero = 0 or (InstaladorValidade='' or InstaladorValidade is Null or InstaladorValidade='0000-00-00')
 or (InstaladorAnexo='' or InstaladorAnexo is Null))  AND tb_trabalhador.distrito = 'Lisboa'
    
11.04.2014 / 11:36