`
xurichusheng
  • 浏览: 337879 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

4个互相关联的表间的查询

    博客分类:
  • sql
阅读更多

 

4个互相关联的表间的查询

 

 

有下面4个表,它们的关联关系如下:

 

student(1)---classes(n) : 1对多

 

classes(1)---teacher_class(n): 1对多

 

teacher(1)---teacher_class(n): 1对多

 

 

student : stuid(主键)   stuname

classes :  clsid(主键)    clsname

teacher :  tid(主键)       tname

teacher_class : t_c_id(主键)   clsid(外键)   tid(外键)

 

现在要查找 student 表中 stuid 对应的 stuname, clsname, tname.

 

步骤如下:

 

1. 先创建一个视图VIEW,查出 classes、teacher、teacher_class 中的 CLSID,CLSNAME,TID,TNAME

 

 

CREATE OR REPLACE VIEW v_t_c AS
SELECT TC.CLSID, C.CLSNAME, T.TID, T.TNAME
  FROM TEACHER_CLASS TC, TEACHER T, CLASSES C
 WHERE TC.TID = T.TID
   AND TC.CLSID = C.CLSID;
 

2. 将表 student 和视图 v_t_c 作联合查询:

 

 

SELECT S.STUNAME, V.CLSNAME, V.TNAME
  FROM STUDENT S, V_T_C V
 WHERE S.CLSID = V.CLSID;
分享到:
评论

相关推荐

    华创Office办公平台 v7.1.zip

    (4) 表间关联:使用Office 365,Excel与Excel之间、Sheet与Sheet之间是相互独立的,无法关联起来。华创办公平台的数据表与数据表之间可设置关联,形成父子关系,能相互引用对方数据,能随对方的修改而自动更新。...

    ArcGIS培训教程.pdf

    许多表和空间对象之间可以通过它们所共有的字段(也常称为"关键字")相互 关联。就像它们在传统数据库应用中一样,这些以表的形式存在的信息集和信息 3 关系在 GIS 数据模型中扮演着非常关键的角色。 空间关系: ...

    oracle sql performance tuning

    3.5 用TABLE 索引(INDEX)栏位去做TABLE间的关联,可避免费时的全表扫描 7 3.6 在VIEW中尽量不要使用 PACKAGE/FUNCTION 来得到栏位值, 8 3.7 通过ROWID访问表 9 3.8 必要时,可在ORACLE STANDARD TABLE上加索引 9 ...

    。net图书管理系统设计方案

    不过在一些较常用的表中,我们可以适当地保留冗余字段,这样,在程序运行过程中可以减少由于表间互相关联而使用速度降低等问题。这就是所谓的第四范式。数据表设计时,最好不要使用用户输入的信息作为主键,每一个...

    ASP.NET4高级程序设计第4版 带目录PDF 分卷压缩包 part1

    8.4.2 使用多个表和关系 8.4.3 查找特定行 8.4.4 在数据访问类里使用DataSet 8.4.5 数据绑定 8.5 DataView类 8.5.1 使用DataView排序 8.5.2 使用DataView过滤 8.5.3 使用关系的高级过滤 8.5.4 ...

    计算机二级公共基础知识

    例如,在一维数组[21,46,24,99,57,77,86]中,查找数据元素99,首先从第1个元素21开始进行比较,比较结果与要查找的数据不相等,接着与第2个元素46进行比较,以此类推,当进行到与第4个元素比较时,它们相等,...

    ASP.NET4高级程序设计(第4版) 3/3

    8.4.2 使用多个表和关系 254 8.4.3 查找特定行 257 8.4.4 在数据访问类里使用DataSet 257 8.4.5 数据绑定 258 8.5 DataView类 259 8.5.1 使用DataView排序 259 8.5.2 使用DataView过滤 261 8.5.3 ...

    软件工程-理论与实践(许家珆)习题答案

    4. 软件工程的主要目标是(C)。 A) 软件需求 B) 软件设计 C) 风险分析 D) 软件实 现 5. 下列属于面向对象开发方法的是(A B C D)。 A) Booch B) UML C) Coad D) OMT 6. 软件危机的主要表现是(B D)。 A) 软件...

    vc++ 开发实例源码包

    这个例子就是查询任何可执行文件的版本信息并且 C++builder 和 VC 都通用,只需要把 AnsiString 替换成 CString 就行了。 gh0st v3.6 源码 - 可下断点调试! 如题。详细见源码。 GMem 内存管理单元源码。GMem.cpp...

    2018吉林大学c++课设源代码压缩包

    这些软件既可以独立提供服务,又互相辉映关联。腾*公司希望对各系统进行整合形成统一的立体社交软件平台。现请完成该平台的设计并实现。要求如下: 1、用户基本信息: 号码ID,昵称,出生时间,T龄(号码申请时间)...

    X-Scan v3.1

    “检测脚本间的依赖关系” - NASL脚本间相互是有关联的,比如一个脚本先获取服务的版本,另一个脚本再根据服务版本进行其他检测。如果打乱了脚本的执行顺序可能会影响扫描结果,但也由于脚本间不需要互相等待,会...

    X-Scan

    超时数据将被忽略 “跳过针对主机的破坏性脚本” - 如标题所述 “检测脚本间的依赖关系” - NASL脚本间相互是有关联的,比如一个脚本先获取服务的版本,另一个脚本再根据服务版本进行其他检测。如果打乱了...

    GisTool_V4.8

    4、查询图元功能。自动查找文本、属性、子图、颜色等。 5、参数拾取功能。拾取点、线、区参数作为当前编辑参数。 6、等距排列功能。文本或图例都可以进行横向、纵向的等距离自动排列。 7、快速制表功能。利用画...

Global site tag (gtag.js) - Google Analytics