当前位置: 代码迷 >> Sql Server >> 关于SQL多个表的整合查询有关问题
  详细解决方案

关于SQL多个表的整合查询有关问题

热度:150   发布时间:2016-04-24 08:48:31.0
关于SQL多个表的整合查询问题
现在我有三张表,round square rectangle
round的列
idround                           半径                周长                       面积

square的列
idsquare                        边长                        周长                         面积

rectangle的列
idrectangle                      长                               宽                       周长                       面积(主键自增,其他double)

现在我想生成一张新表
type                                     input1                                     input2                            周长                               面积
round                                对应的半径                              0或空                               对应周长                       对应面积
square                              对应的边长                                                                       对应周长                         对应周长
rectangle                           对应的长                                    对应的宽                     对应周长                             对应面积


不知能否实现,求大神,万分感谢

------解决思路----------------------
是要这样子的吗

CREATE TABLE [ROUND]
(
  NAME VARCHAR(20),
  banjing NUMERIC(10,2),
  zhouchang NUMERIC(10,2),
  mianji    NUMERIC(10,2)
)

CREATE TABLE [square]
(
  NAME VARCHAR(20),
  bianchang NUMERIC(10,2),
  zhouchang NUMERIC(10,2),
  mianji    NUMERIC(10,2)
)

CREATE TABLE [rectangle]
(
  NAME VARCHAR(20),
  chang NUMERIC(10,2),
  kuan NUMERIC(10,2),
  zhouchang    NUMERIC(10,2),
  mianji  NUMERIC(10,2)
)

SELECT NAME AS [type],banjing AS input1,NULL AS input2,zhouchang AS 周长,mianji as 面积 FROM [ROUND] UNION ALL
SELECT NAME,bianchang,null,zhouchang,mianji FROM [square] UNION ALL
SELECT NAME ,chang,kuan,zhouchang ,mianji  FROM [rectangle] 

  相关解决方案