2 qq 29460785 qq_29460785 于 2016.05.04 16:05 提问

sql查询语句,在一个表里查询同时包含两行数据的ID

select * from traintime where '成都' IN (select * from traintime where Station ='重庆')

这句话要怎么写啊!我的数据库结构是(所有的列车时刻表都在一个表里)
id 站台 里程
c226 成都 0
c226 重庆 100
k51 成都 0
k51 重庆 100
k51 武汉 300
。。。
怎样才能查询经过这两个站的所有列车信息

3个回答

danielinbiti
danielinbiti   Ds   Rxr 2016.05.04 16:20
已采纳

select a.* from traintime a,traintime b where a.id=b.id and a.站台 in('成都') and b.站台 in ('重庆')
danielinbiti
danielinbiti 回复qq_29460785: 自己order by 一下不就行了 SELECT * FROM (刚那语句) c order by c.id
一年多之前 回复
qq_29460785
qq_29460785 谢谢我知道怎么做了!
一年多之前 回复
qq_29460785
qq_29460785 可以按ID排列吗
一年多之前 回复
danielinbiti
danielinbiti 回复qq_29460785: select a.* from traintime a,traintime b where a.id=b.id and a.站台 in('成都') and b.站台 in ('重庆') union all select b.* from traintime a,traintime b where a.id=b.id and a.站台 in('成都') and b.站台 in ('重庆')
一年多之前 回复
qq_29460785
qq_29460785 回复danielinbiti: 我知道哪样加,但出来的结果是横着排的,不是竖着排的啊,重庆的数据就在成都后面的。
一年多之前 回复
danielinbiti
danielinbiti 回复qq_29460785: select a.*,b.* from traintime a,traintime b where a.id=b.id and a.站台 in('成都') and b.站台 in ('重庆')
一年多之前 回复
danielinbiti
danielinbiti 回复qq_29460785: 。。。改一下就行了呀,加个b.*不就出来重庆了
一年多之前 回复
qq_29460785
qq_29460785 出来的结果只有包含成都的,怎么让重庆的也同时出来啊!
一年多之前 回复
Nightfalls123
Nightfalls123   2016.05.04 17:33

使用事务查询呗,简洁方便

Nightfalls123
Nightfalls123   2016.05.04 17:33

使用事务查询呗,简洁方便

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!