创建一个包含合并行的mysql视图

时间:2013-07-07 13:51:20

标签: mysql

您好我有一张表:

id_rel | id_art | id_fam | id_cat | id_scat | id_marca | id_model | id_year

  1      cw001      10       11        21       null       null       null
  2      cw001     null     null      null      233        455        466  
  3      cw001     null     null      null      234        456        467 
  4      cw001     null     null      null      235        457        468
  5      cw001     null     null      null      236        458        469  

对于特定的搜索查询,我需要将它组合在一个像这样的mysql视图中:

id_rel | id_art | id_fam | id_cat | id_scat | id_marca | id_model | id_year

  1      cw001      10       11         21       233        455        466 
  2      cw001      10       11         21       234        456        467 
  3      cw001      10       11         21       235        457        468
  4      cw001      10       11         21       236        458        469 

id-art它是产品id_fam | id_cat | id_scat它是第一组产品系列,id_marca | id_model | id_year它是secondo组。 我需要编写一个搜索查询来组合产品组并将所有值放在同一行上,这对我来说似乎是最好的方式。

那你可以帮我创建这个视图吗? 基本上我必须复制id_fam | id_cat |每行的id_scat。

我希望清楚,对不起我的英语 谢谢

1 个答案:

答案 0 :(得分:1)

假设您只想查看合并的行,请尝试:

select g2.id_rel, g1.id_art, g1.id_fam, g1.id_cat, g1.id_scat,
       g2.id_marca, g2.id_model, g2.id_year
from myTable g1
join myTable g2 on g1.id_art = g2.id_art and g2.id_fam is null
where g1.id_marca is null