| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 659 人关注过本帖
标题:能实现这样的查询吗?
只看楼主 加入收藏
bsijl
Rank: 1
等 级:新手上路
帖 子:27
专家分:0
注 册:2005-8-30
收藏
 问题点数:0 回复次数:12 
能实现这样的查询吗?

举例说明:一个人从美国坐飞机来到大陆,查询数据
表1为国家代码和国家名称表,只有两个字段
表名为text1
 

代码 国家
001 美国
002 中国
003 香港

 

第二个表有三个字段:表名为text2
 

ID 姓名 起飞时间 到达时间 起飞时的国家代码 到达的国家代码
1 张三 2006年7月8日 2006年7月8日 001 002
2 李四 2006年7月8日 2006年7月8日 002 002
3 王二 2006年7月8日 2006年7月8日 003 003

以上两个表为数据库里的表

现在要做个查询,

sql="select text1.*,text2.* from text1,text2 where ????????????"

使其这样显示出来!

姓名 起飞时间 到达时间 起飞时的国家代码 到达的国家代码
张三 2006年7月8日 2006年7月9日 美国 中国
李四 2006年7月8日 2006年7月10日 中国 中国
王二 2006年7月8日 2006年7月13日 美国 香港

红色问号就是我不会写的,我只会写

sql="select text1.*,text2.* from text1,text2 where 起飞时的国家代码=代码",可是后

面的到达国家代码怎么替换出来,请问能否做到一次查询就能实现?如果做两次查询我能做到

搜索更多相关主题的帖子: 查询 
2006-07-08 21:23
labid
Rank: 1
等 级:新手上路
帖 子:151
专家分:0
注 册:2006-6-20
收藏
得分:0 
用表的连接,把两个表连接起来
2006-07-09 02:00
bsijl
Rank: 1
等 级:新手上路
帖 子:27
专家分:0
注 册:2005-8-30
收藏
得分:0 
我是在ASP里做的
2006-07-09 12:24
yms123
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:209
帖 子:12488
专家分:19042
注 册:2004-7-17
收藏
得分:0 

select text1.* from text1 where 起飞时的国家代码=(select 国家 from text2 where text2.代码=text1.起飞时的国家代码);
用字查询呢?实在不行楼主可以到SQL Server论坛去问问,那里的人应该更清楚。

2006-07-09 15:40
icecool
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:20
帖 子:1216
专家分:1376
注 册:2005-3-14
收藏
得分:0 

我觉得你还应加一个字段的.国为你国家代码里有中国,又来个香港,
不知别的国家里你有没有这种情况,如:
代码 国家 AA
001 美国 US
002 中国 CN
003 香港 CN

select text1.*,text2.* from text1,text2 where text2.起飞时的国家代码 in (select 代码 from text1 where AA='US') and text2.到达的国家代码 in (select 代码 from text1 where AA='CN')

好像不行

[此贴子已经被作者于2006-7-10 9:48:55编辑过]


http://toorup.3v.do
loading...
2006-07-10 09:07
icecool
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:20
帖 子:1216
专家分:1376
注 册:2005-3-14
收藏
得分:0 

不知对不对了,感觉写的.你试试吧


http://toorup.3v.do
loading...
2006-07-10 09:08
hangxj
Rank: 6Rank: 6
等 级:贵宾
威 望:29
帖 子:2045
专家分:0
注 册:2006-4-10
收藏
得分:0 
以下是引用bsijl在2006-7-9 12:24:57的发言:
我是在ASP里做的

既然你是在ASP中的,那就多做两次查询不就可以了?


http://www./
2006-07-10 09:13
bsijl
Rank: 1
等 级:新手上路
帖 子:27
专家分:0
注 册:2005-8-30
收藏
得分:0 
楼上说的对,我以前就是这样解决的,做两次查询,不过不是想进一步吗?呵呵,不知道能不能实现
2006-07-11 06:51
特种兵
Rank: 1
等 级:新手上路
帖 子:37
专家分:0
注 册:2006-7-12
收藏
得分:0 

好象不能用一个语句来写的吧


我坐在一个黑暗的角落/憧憬着光明/人生就是不断的历练自己的心志/于是我渴望失败/因为我渴望成功
2006-07-12 11:22
乱弹琴
Rank: 1
等 级:新手上路
威 望:1
帖 子:1665
专家分:0
注 册:2006-3-7
收藏
得分:0 

看看饿的问题,好象红体部分有问题啊:
<%
zhiwei=Request.Form("zhiwei")
diqu=Request.Form("diqu")
%>
<%

if zhiwei="所有职位" and diqu="所有地区" then
sql="select * from Job"
elseif zhiwei<>"所有职位"and diqu="所有地区" then
sql="select * from Job where Duix='"&zhiwei&"'"
elseif zhiwei="所有职位"and diqu<>"所有地区" then
sql="select * from Job where Did='"&diqu&"'"
elseif zhiwei<>"所有职位"and diqu<>"所有地区" then
spl="select * form Job where Duix='"&zhiwei&"' and Did='"&diqu&"'"

end if
Set rs = Server.CreateObject("ADODB.Recordset")
rs.open sql,conn,1,1
end if
%>
前面的几个都可以,好象红体部分有问题,


男人的謊言可以騙女人的壹夜! 女人的謊言可以騙男人的壹生!
2006-07-12 11:29
快速回复:能实现这样的查询吗?
数据加载中...
 
   



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

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