当前位置: 代码迷 >> Sql Server >> 怎样实现多角度查询,该怎么解决
  详细解决方案

怎样实现多角度查询,该怎么解决

热度:34   发布时间:2016-04-24 10:09:02.0
怎样实现多角度查询
有两个表A 、B,没有相同的字段

表A:
    地区    城市
————————
    广东    广州
    广东    深圳

表B:
    日期
——————
    20080101
    20080102
    20080103

想要合并成这样:
地区    城市    日期
广东    广州    20080101
广东    广州    20080102
广东    广州    20080103
广东    深圳    20080101
广东    深圳    20080102
广东    深圳    20080103

日期是一天一条记录,所以相当多的记录,请问有什么高效的合并方法啊?
抛砖引玉:
我的目的是想让表既能以日期查询,也能以地区城市查询,因为还要连接其他的表,比如销售表和退货表,所以这个表必须包含全地区和整个日历表的数据,如果还要按产品查询,那么还需要包含全部产品记录,请教高手这样的表应该怎样进行整合比较高效?谢谢赐教!

------解决方案--------------------
为了查询的灵活性,不应该合并表。

其实这种设计思想就是数据仓库的雪花模型,时间和城市作为维度表存在,销售和退货表作为事实表存在。
------解决方案--------------------
如果实时进行链接,服务器压力会很大。
可以再建一个表,设置好index等,数据插入使用触发器,触发器建立在A,B两表之后,当数据有变动的时候,触发器修改新表中的数据。
  相关解决方案