一张表就叫做Total表吧
Total表结构
id number primary key
aid number
bid number
cid number
-------------------
以下三张表和Total表通过外键关联
A表结构
aid number primary key
name varchar2(200)
.....B表结构
bid number prrmary key
name varchar2(200)
......C表结构
cid number primary key
name varchar2(200)
.....
------------------
以下三张表保存的是上面三张表的修改记录
A_update
id number primary key
aid number
name varchar2(200)
updateTime dateB_update
id number primary key
bid number
name varchar2(200)
updateTime dateC_update
id number primary key
cid number
name varchar2(200)
updateTime date
需求是给一个时间,比如说是“2012-05-12 23”,假如说A_update、B_update、C_update三张表任意一张表有和输入时间相对应的记录,就把update表中相关的信息查出来,如果没有update表中没有相关的记录就直接使用A、B、C三张表的数据。表达的貌似不明朗,举个例子,
给定时间“2012-05-12 23”
正常情况:三张update表没有记录,那么查询的结果是A、B、C和Total关联后得到的数据
不正常情况:
第一种情况,A_update表中有记录,而其他update表中没有记录,那么查询的结果是A_update、B、C和Total关联后得到的数据
第二种情况,A_update、B_update表中有记录,而C_update表中没有记录,那么查询的结果是A_update、B_update、C和Totale关联后得到的数据
。。别的情况相信大家比我更清楚了逻辑是有了,但知道怎么使用sql语句展现出来,还请高手指点一下
Total表结构
id number primary key
aid number
bid number
cid number
-------------------
以下三张表和Total表通过外键关联
A表结构
aid number primary key
name varchar2(200)
.....B表结构
bid number prrmary key
name varchar2(200)
......C表结构
cid number primary key
name varchar2(200)
.....
------------------
以下三张表保存的是上面三张表的修改记录
A_update
id number primary key
aid number
name varchar2(200)
updateTime dateB_update
id number primary key
bid number
name varchar2(200)
updateTime dateC_update
id number primary key
cid number
name varchar2(200)
updateTime date
需求是给一个时间,比如说是“2012-05-12 23”,假如说A_update、B_update、C_update三张表任意一张表有和输入时间相对应的记录,就把update表中相关的信息查出来,如果没有update表中没有相关的记录就直接使用A、B、C三张表的数据。表达的貌似不明朗,举个例子,
给定时间“2012-05-12 23”
正常情况:三张update表没有记录,那么查询的结果是A、B、C和Total关联后得到的数据
不正常情况:
第一种情况,A_update表中有记录,而其他update表中没有记录,那么查询的结果是A_update、B、C和Total关联后得到的数据
第二种情况,A_update、B_update表中有记录,而C_update表中没有记录,那么查询的结果是A_update、B_update、C和Totale关联后得到的数据
。。别的情况相信大家比我更清楚了逻辑是有了,但知道怎么使用sql语句展现出来,还请高手指点一下
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货