VascoMarques Posted October 8, 2014 Report Share Posted October 8, 2014 Boa noite! Tenho uma dúvida, desta vez em mysql. É o seguinte, eu tenho duas tabelas: uma "cities" e uma "countries". Ambas têm uma coluna denominada de "name". A minha dúvida é: como é que posso, numa só query, procurar resultados tanto de uma tabela como de outra? Neste momento, esta é a minha query, mas dá erro: "SELECT cities.name, countries.name FROM countries INNER JOIN cities ON cities.name=countries.name WHERE name LIKE '%{$search_term}%'" Penso que tenho de usar um JOIN, mas não estou a conseguir obter nada para além de erros! Será que me podem dar uma ajuda? Obrigado desde já! Link to comment Share on other sites More sharing options...
HappyHippyHippo Posted October 8, 2014 Report Share Posted October 8, 2014 (edited) nop ... $sql = " SELECT name FROM cities WHERE name LIKE '%{$search_term}%' UNION SELECT name FROM countries WHERE name LIKE '%{$search_term}%' " Edited October 8, 2014 by HappyHippyHippo IRC : sim, é algo que ainda existe >> #p@p Portugol Plus Link to comment Share on other sites More sharing options...
alexviseu Posted October 8, 2014 Report Share Posted October 8, 2014 E para futura referencia podes fazer table.column as newname Link to comment Share on other sites More sharing options...
Labroskas Posted October 9, 2014 Report Share Posted October 9, 2014 (edited) Fiz aqui um Select seguindo o teu raciocinio, não sei se no WHERE desejas 'OR' ou 'AND', espero que te ajude. SELECT B.name AS Nome_B, A.name AS Nome_A FROM countries A INNER JOIN cities B ON A.name = B.name WHERE (B.name LIKE '%{$search_term}%') OR (A.name LIKE '%{$search_term}%') Cumps Edited October 9, 2014 by Labroskas Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now