标题:关键字 distinct 的问题
只看楼主
dyqwyy
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2007-3-24
 问题点数:0 回复次数:8 
关键字 distinct 的问题

第一个语句
SELECT distinct DAH_, XM_, ZZ_, POST_, MAIL_, XZ_ FROM dbo.aaaa
第二个语句

select distinct dah_ from aaaa
为什么第一个语句的执行结果会比第二个语句的结果多



问题二
UPDATE ABC
花园= ('紫山大街6号 白云花园')

WHERE 地址 like ('%紫山大街6号%')
帮忙写个语句,就是把地址6号变成7号,8号,依次递增 而且上面花园那的6号也要和下面地址保持一致。
谢谢。


运行环境 SQL2005

[此贴子已经被作者于2007-3-31 9:48:47编辑过]

搜索更多相关主题的帖子: distinct 关键 
2007-03-31 09:31
初学Delphi
Rank: 3Rank: 3
等 级:新手上路
威 望:9
帖 子:330
专家分:0
注 册:2006-4-4
得分:0 

是同一个表么?
第一个
合并的是DAH_, XM_, ZZ_, POST_, MAIL_, XZ_ 重复的
第二个 合并
DAH_的
如:
1,2,3,4,5
1,2,3,4,6
用第一个查询出来就是
1,2,3,4,5
1,2,3,4,6
两条记录
第二个只有
1
这一 条记录
第二个还没明白你的意思?
原来表中有‘紫山大街6号 白云花园'这个值,但是不确定有几个
你想把从第二个开始的变7号
第三个变8号?是这个意思么?
还有下次最好把创建表的语句给出来
这样别人给你测试的时候不用写创建表语句了

2007-03-31 09:37
dyqwyy
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2007-3-24
得分:0 

不好意思,打的时候漏了个A,两条语句用的是同一 张表
SELECT distinct DAH_, XM_, ZZ_, POST_, MAIL_, XZ_ FROM dbo.aaaa
那我只要去掉所有的DAH的重复值要怎么写呀?

第二个问题
表中原来是没有‘紫山大街6号 白云花园’这个值的,是自己写上去的。

表 :
地址         花园
紫山大街6号307      NULL
紫山大街7号401       NULL
紫山大街8号305       NULL
紫山大街9号 441       NULL


要的结果
地址     花园
紫山大街6号307  紫山大街6号 白云花园
紫山大街7号401      紫山大街7号 白云花园        
紫山大街8号305 紫山大街8号 白云花园
紫山大街9号441      紫山大街9号 白云花园             

[此贴子已经被作者于2007-3-31 10:20:02编辑过]

2007-03-31 09:59
初学Delphi
Rank: 3Rank: 3
等 级:新手上路
威 望:9
帖 子:330
专家分:0
注 册:2006-4-4
得分:0 

第二个
update table set 花园=地址+' 白云花园'
where 地址 like '紫山大厦%号'

2007-03-31 10:03
dyqwyy
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2007-3-24
得分:0 


表 :
地址         花园
紫山大街6号307      NULL
紫山大街7号401       NULL
紫山大街8号305       NULL
白云大道3号 441       NULL


要的结果
地址     花园
紫山大街6号307  紫山大街6号 白云花园
紫山大街7号401      紫山大街7号 白云花园        
紫山大街8号305 紫山大街8号 白云花园
白云大道3号441     白云大道3号             


那如果我要的结果是只是地址的一部分如何写???
老是要你帮我,真的很感谢

[此贴子已经被作者于2007-3-31 10:33:59编辑过]

2007-03-31 10:21
初学Delphi
Rank: 3Rank: 3
等 级:新手上路
威 望:9
帖 子:330
专家分:0
注 册:2006-4-4
得分:0 

没什么
update table set 花园=substring(地址,1,charindex('号',地址))+' 白云花园'
where 地址 like '紫山大厦%号'

2007-03-31 10:38
初学Delphi
Rank: 3Rank: 3
等 级:新手上路
威 望:9
帖 子:330
专家分:0
注 册:2006-4-4
得分:0 

怎么下面多出一个白云大街?

2007-03-31 10:40
dyqwyy
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2007-3-24
得分:0 
因为不是所有的地址都是一样的呀。
2007-03-31 10:44
ldy663
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2007-4-27
得分:0 

第二个
update table set 花园=left(地址,10)+' 白云花园';

行不?

2007-05-04 19:24



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-128278-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.758473 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved