我现在有三个表,现在假设为A(a1,a2)、B(b1,b2)、C(c1,c2)。关系为如果a2的字段值为1,则查找所有a2=b1的记录,如果a2的字段值为2,则查找所有a2=c1的记录。
我觉得这样的设计不太好,想用其它的关联方式,自己在数据库设计方面较弱,向各位高手学习一下^_^
我觉得这样的设计不太好,想用其它的关联方式,自己在数据库设计方面较弱,向各位高手学习一下^_^
解决方案 »
- oracle和MS-SQL指定某日是当年的第几周,算出来的结果不一样!
- 物化视图查不出数据的问题
- 求一个oracle 函数
- oracle导入导出问题
- 存储过程语法错误,求救!!!
- 如何将一个用户方案导出为SQL语句
- 如何查看某一用户的所有表
- 紧急求助,oracle9连接oracle7的问题,100分求助。
- /usr/bin/ld: cannot find -ltcl
- oracle出错啦,我该怎么办呀,急急急!!!!!!
- Processes到底能调多大
- 请问谁能介绍一下v$session, v$license, v$sysstat, v$sqltext, v$session_Wait等等包含有哪些内容,可以查出的信息有哪些?
有四个表,现在假设为A(a1,a2)、B(b11,b12,b2)、C(c1,c2)(这三个表是别人设计的,他也需要用,不过如果有好的建议可以改他的表结构),还有另外一个表D(d0,d1,d2)。现在需要实现两个查找方法:
第一个:根据表D的某个记录d1值查找d1=a1的记录,现在就有a2的值,如果a2为1则查找表C获得c2的值,结束。
第二个:根据表D的某个记录d1值查找d1=a1的记录,现在就有a2的值,如果a2为2,则根据a1和d2的值查找表B,使(a1=b11,d2=b12),然后取出b2的值,结束。如果使用程序来查找,也很容易实现,不过觉得设计的不好,想优化一下,请数据方面的高手指教!