用sql语句查询的一个问题

manpuku 2010-08-03 09:56:19
用SQL语句查询一个通信簿,并且用type分类,但是某一条记录在type1 和type2下均能搜索到,最后输出的时候就把同一条目显示了两边,
如何优化才能让他只显示一遍呢
代码如下

Set callRst = Nothing
SQLtxt = "select TOP " & SQLlistMaxNum & " code,tele_code,username,department,address,remark,number,pinyin,adcode,1 as type from tele " & _
"where username like '" & temp & "' or department like '" & temp & "' or address like '" & temp & "' or remark like '" & temp & "'"
SQLtxt = SQLtxt & " union "
SQLtxt = SQLtxt & "select TOP " & SQLlistMaxNum & " code,tele_code,username,department,address,remark,number,pinyin,adcode,2 as type from tele " & _
"where pinyin like '%" & USE(0) & "%' or pinyin like '%" & USE(1) & "%' or pinyin like '%" & USE(2) & "%' or pinyin like '%" & USE(3) & "%' or pinyin like '%" & USE(4) & "%'"
SQLtxt = "select * from (" & SQLtxt & ") order by type"
Set callRst = callCnn1.Execute(SQLtxt)

比如我用这个搜索“上海”然后输出结果就是这样的

号码 姓名 type
123 上海 1
123 上海 2
...全文
51 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
manpuku 2010-08-03
  • 打赏
  • 举报
回复
之前试过了 提示
DISTINCT 和 order by 冲突
jiaochengman 2010-08-03
  • 打赏
  • 举报
回复
DISTINCT函数可以去掉重复的记录
jhone99 2010-08-03
  • 打赏
  • 举报
回复
这个应该仔细思考你的查询条件,你查询条件逻辑不对

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧