首页 新闻 论坛 群组 Blog 文档 下载 读书 Tag 网摘 搜索 .NET Java 游戏 视频 人才 外包 培训 数据库 书店 程序员
中国软件网
欢迎您:游客 | 登录 注册 帮助
  • 请教一个SQL语句,希望大家帮忙! [已结贴,结贴人:yshuui]
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • yshuui
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    • 揭帖率:
    发表于:2008-05-16 12:34:54 楼主
    有这样一个数据库表格

    字段1 字段2 字段3 字段4 字段5 字段6
    1    2    a    a1    b    b1
    2    3    c    c1    a    a2

    想得到‘字段3’或者‘字段5’=a的记录
    字段4和字段3,字段6和字段5是相关的,一起查出来。

    要查询的结果为
    字段1 字段2 字段3 字段4
    1    2    a    a1 
    2    3    a    a2

    请教用sql怎么做查询?
    20  修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • jinjazz
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    • 5

    发表于:2008-05-16 12:39:181楼 得分:0
    select * from tb where 字段3 ='a' or 字段5='a'
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • pt1314917
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-05-16 12:40:292楼 得分:0
    字段1 字段2 字段3 字段4 
    1    2    a    a1   
    2    3  a    a2

    红色部分的结果是怎么来的?
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • lff642
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-05-16 12:41:193楼 得分:0
    SQL code
    --try create table tb(col1 int,col2 int,col3 varchar(10),col4 varchar(10),col5 varchar(10),col6 varchar(10)) insert into tb select 1,2,'a','a1','b','b1' union all select 2,3,'c','c1','a','a2' select col1,col2,col3,col4 from tb where col3 = 'a' union all select col1,col2,col5,col6 from tb where col5='a' drop table tb
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • lff642
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-05-16 12:42:464楼 得分:0
    SQL code
    ---result /* col1 col2 col3 col4 1 2 a a1 2 3 a a2 */
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • zanyzyg
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-05-16 12:52:325楼 得分:0

    借用一下

    create table tb(col1 int,col2 int,col3 varchar(10),col4 varchar(10),col5 varchar(10),col6 varchar(10))
    insert into tb select 1,2,'a','a1','b','b1' union all select 2,3,'c','c1','a','a2'

    select col1,col2,case when col3='a' then col3 else col5 end as col3,case when col3='a' then col4 else col6 end as col4 from tb

    drop table tb
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • zanyzyg
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-05-16 12:53:246楼 得分:0
    不好意思,少了where部分

    借用一下

    create table tb(col1 int,col2 int,col3 varchar(10),col4 varchar(10),col5 varchar(10),col6 varchar(10))
    insert into tb select 1,2,'a','a1','b','b1' union all select 2,3,'c','c1','a','a2'

    select col1,col2,case when col3='a' then col3 else col5 end as col3,case when col3='a' then col4 else col6 end as col4 from tb where col3='1' or col5='a'

    drop table tb
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • ojuju10
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-05-16 13:03:177楼 得分:20
    SQL code
    create table aa(c1 int,c2 int,c3 varchar(10),c4 varchar(10),c5 varchar(10),c6 varchar(10)) insert into aa select 1, 2, 'a', 'a1', 'b', 'b1' insert into aa select 2, 3, 'c', 'c1', 'a', 'a2' select c1,c2,c3,c4 from aa a where c3='a' union all select c1,c2,c5,c6 from aa a where c5='a'
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • zhou968
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-05-16 13:14:188楼 得分:0
    SQL code
    create table tb(col1 int,col2 int,col3 varchar(10),col4 varchar(10),col5 varchar(10),col6 varchar(10)) insert into tb select 1,2,'a','a1','b','b1' union all select 2,3,'c','c1','a','a2' select col1,col2,col3,col4 from tb where col3 = 'a' union all select col1,col2,col5,col6 from tb where col5='a'
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • swot2008
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-05-16 14:06:429楼 得分:0
    SQL code
    [code=SQL]select 字段1,字段2,字段3,字段4 from tab where 字段3 ='a' or 字段5='a'
    [/code]
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • swot2008
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-05-16 14:07:4010楼 得分:0
    SQL code
    select 字段1,字段2,字段3,字段4 from tab where 字段3 ='a' or 字段5='a'
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • qys2000
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-05-16 14:12:1411楼 得分:0
    select * from tb where 字段3 ='a' or 字段5='a'
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • yshuui
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-05-16 21:31:1812楼 得分:0
    谢谢大家,已经解决。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • yshuui
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-05-16 21:32:0913楼 得分:0
    select 字段1 字段2 字段3 字段4 from table where 字段3='a' 
    union 
    select 字段1 字段2 字段5 字段6 from table where 字段5='a' 
    修改 删除 举报 引用 回复

    网站简介广告服务网站地图帮助联系方式诚聘英才English 问题报告
    北京创新乐知广告有限公司 版权所有 京 ICP 证 070598 号
    世纪乐知(北京)网络技术有限公司 提供技术支持
    Copyright © 2000-2008, CSDN.NET, All Rights Reserved