怎样按同一条件在多个表中查询
时间:2011-05-23
来源:互联网
数据库包含5个表 现在要把5个表的样品登记号都列出来 5个表中没有主表 5个表并列关系 现在要把5个表中所有的样品登记号显示出来 并且要使查询中包含如下字段,样品登记号 MI 拉伸强度 密度 分散登记 弯曲模量,如果某一样品登记号只有密度的内容,那么只显示密度 拉伸强度等项当然就没有值,同一样品登记号有MI 密度两项内容,就显示两项,有多少显示多少,请教下应该怎么做到?
多表查询.rar(15.56 KB)
附件

2011-5-23 12:02, 下载次数: 5
作者: [email protected] 发布时间: 2011-05-23
分组的函数用什么你可以自己改,LAST()/FIRST(),MIN/MAX等都行。
话说回来,你这样的需求应该设计主表(即样品登记表),其余的表从样品表中取登记号,数据库设计应该遵循一定的逻辑,否则费力费事不说,也会容易误入歧途。
select 样品登记号,last(mi) as miV,last(拉伸强度) AS 强度V,last(密度) AS 密度V,last(分散等级) AS 等级V,last( 弯曲模量) AS 弯曲V from (
SELECT 样品登记号,mi,null as 拉伸强度,null as 密度,null as 分散等级,null as 弯曲模量 FROM MI数据库 union all
SELECT 样品登记号,null,拉伸强度,null,null,null FROM 拉伸数据库 union all
SELECT 样品登记号,null,null,密度,null,null FROM 密度数据库 union all
SELECT 样品登记号,null,null,null,分散等级,null FROM 炭黑分散数据库 union all
SELECT 样品登记号,null,null,null,null,弯曲模量 FROM 弯曲数据库) a group by 样品登记号
话说回来,你这样的需求应该设计主表(即样品登记表),其余的表从样品表中取登记号,数据库设计应该遵循一定的逻辑,否则费力费事不说,也会容易误入歧途。
select 样品登记号,last(mi) as miV,last(拉伸强度) AS 强度V,last(密度) AS 密度V,last(分散等级) AS 等级V,last( 弯曲模量) AS 弯曲V from (
SELECT 样品登记号,mi,null as 拉伸强度,null as 密度,null as 分散等级,null as 弯曲模量 FROM MI数据库 union all
SELECT 样品登记号,null,拉伸强度,null,null,null FROM 拉伸数据库 union all
SELECT 样品登记号,null,null,密度,null,null FROM 密度数据库 union all
SELECT 样品登记号,null,null,null,分散等级,null FROM 炭黑分散数据库 union all
SELECT 样品登记号,null,null,null,null,弯曲模量 FROM 弯曲数据库) a group by 样品登记号
作者: marco 发布时间: 2011-05-23
有的结果好像有丢失,比如MI 原表中G-100001和G-100055中都有数值,但按照您的做法G-100001的MI数据丢失了,应该怎样做才能使数据显示完全呢?还有就是您说先建个样品登记的主表,主表就只用含有样品登记号这个字段吗?
作者: [email protected] 发布时间: 2011-05-23
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28