首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

如何小弟我查询的时候老是查询出重复数据

2012-07-29 
怎么我查询的时候老是查询出重复数据?表firesystype、devicetype、devicesfiresystype与devicetype一对多,de

怎么我查询的时候老是查询出重复数据?
表firesystype、devicetype、devices 
firesystype与devicetype一对多,devicetype与devices 一对多


 select firesystype.tiSysType,firesystype.vSysdesc from firesystype left join devicetype on firesystype.tiSysType=devicetype.tiSysType left join devices on devicetype.tiDeviceType=devices.tiDeviceType left join gateway on gateway.Gatewayaddress=devices.Gatewayaddress where gateway.orgid='201201020100009'

查询的结果:
129火灾自动报警系统
129火灾自动报警系统
22消防应急照明和疏散指示系统
135灭火器
22消防应急照明和疏散指示系统
129火灾自动报警系统
22消防应急照明和疏散指示系统
135灭火器
。。。。。。。。。。。。。。。。。。。。。。。。。。。。都重复了、

[解决办法]

SQL code
--加 distinct 过滤掉重复的select distinct firesystype.tiSysType,firesystype.vSysdesc from firesystype left join devicetype on firesystype.tiSysType=devicetype.tiSysType left join devices on devicetype.tiDeviceType=devices.tiDeviceType left join gateway on gateway.Gatewayaddress=devices.Gatewayaddress where gateway.orgid='201201020100009'
[解决办法]
firesystype left join devicetype on firesystype.tiSysType=devicetype.tiSysType 
left join devices on devicetype.tiDeviceType=devices.tiDeviceType 
left join gateway on gateway.Gatewayaddress=devices.Gatewayaddress

在于这里,四个表,按照关联条件查出来的数据应该有重复的,就是说其中有可能存在 一对多 的情况

热点排行
Bad Request.