我有這個查詢,它將搜索一些新聞,並返回新聞數據作爲其組,公司和類別。事情是一個新聞可以有很多公司和組,我需要將這個結果(grupoNome和empresaNome)在每個字段中連接起來,因此使得這個查詢只返回一行:連接MySql結果
這是我的'普通'查詢結果:
id titulo categoriaId url categoriaNome grupoNome empresaNome
5 Teste 1 teste "Todas as Notícas" "Group 1" Company 1
5 Teste 1 teste "Todas as Notícas" "Group 1" Company 2
5 Teste 1 teste "Todas as Notícas" "Group 1" Company 3
5 Teste 1 teste "Todas as Notícas" "Group 1" Company 4
5 Teste 1 teste "Todas as Notícas" "Group 2" Company 1
5 Teste 1 teste "Todas as Notícas" "Group 2" Company 2
5 Teste 1 teste "Todas as Notícas" "Group 2" Company 3
5 Teste 1 teste "Todas as Notícas" "Group 2" Company 4
5 Teste 1 teste "Todas as Notícas" "Group 3" Company 1
5 Teste 1 teste "Todas as Notícas" "Group 3" Company 2
5 Teste 1 teste "Todas as Notícas" "Group 3" Company 3
5 Teste 1 teste "Todas as Notícas" "Group 3" Company 4
這是我的查詢:
SELECT n.*, nc.nome AS categoriaNome, g.nome AS grupoNome, e.nome AS empresaNome FROM `noticias` n
INNER JOIN `noticiascategorias` nc ON n.categoriaId = nc.id
INNER JOIN `noticiasgrupos` ng ON n.id = ng.noticiaId
INNER JOIN `grupos` g ON g.id = ng.grupoId
INNER JOIN `noticiasempresas` ne ON n.id = ne.noticiaId
INNER JOIN `empresas` e ON e.id = ne.empresaId
WHERE n.url LIKE 'teste';
noticiasgrupos
/noticiasempresas
包含新聞集團/公司多對多relantionship。
grupos
/empresas
包含組/公司信息。
編輯:
我會需要的結果是這樣的:
5 Teste 1 teste "Todas as Notícas" "Group 1_Group2_Group_3" "Company 1_Company_Company_3"
除數可以是任何東西,我以後可以用它來分割(| _ *)
你想要結果看起來像什麼? – Tom 2015-02-10 19:34:56
@Tom對不起,忘了解釋這個零件 – Terkhos 2015-02-10 19:37:08
不好主意:如果你打算晚些時候分手,那麼請不要在第一時間開口。如果你堅持這樣做,然後看看[group_concat()](http://dev.mysql.com/doc/refman/5.0/en/group-by-functions.html#function_group-concat) – 2015-02-10 19:42:35