全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1104
推到 Plurk!
推到 Facebook!

如何对多表查询排序

尚未結案
ffprince
初階會員


發表:66
回覆:62
積分:25
註冊:2003-08-16

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-03-04 19:35:57 IP:61.154.xxx.xxx 未訂閱
如何对多张格式一样的表进行如下查询? 1、各表的格式(列数、列名、属性)完全一样 2、我想从各表中将符合同一条件的记录的同一些列全找出来 3、并且想让所有记录按照某列排序 假如对单表用select 列名1,列名2 from 表名1 where 条件 order by 列名3 那么对多表怎么写? 用 Union这样写行吗: select Field1,Field2 from Table1 where xxxxx union select Field1,Field2 from Table2 where xxxxx union select Field1,Field2 from Table3 where xxxxx order by field3
Mickey
版主


發表:77
回覆:1882
積分:1390
註冊:2002-12-11

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-03-04 20:48:46 IP:218.32.xxx.xxx 未訂閱
請問是用何種數據庫.
jeffreck
高階會員


發表:247
回覆:340
積分:197
註冊:2003-01-23

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-03-04 20:56:35 IP:61.70.xxx.xxx 未訂閱
Select * From ( select Field1,Field2,Field3 from Table1 where xxxxx union ALL select Field1,Field2,Field3 from Table2 where xxxxx union ALL select Field1,Field2,Field3 from Table3 where xxxxx ) AS temp1 Order by field3
ffprince
初階會員


發表:66
回覆:62
積分:25
註冊:2003-08-16

發送簡訊給我
#4 引用回覆 回覆 發表時間:2004-03-04 20:57:46 IP:61.154.xxx.xxx 未訂閱
用ADO控件,对oracle数据库查询
ffprince
初階會員


發表:66
回覆:62
積分:25
註冊:2003-08-16

發送簡訊給我
#5 引用回覆 回覆 發表時間:2004-03-04 21:47:50 IP:61.154.xxx.xxx 未訂閱
引言: Select * From ( select Field1,Field2,Field3 from Table1 where xxxxx union ALL select Field1,Field2,Field3 from Table2 where xxxxx union ALL select Field1,Field2,Field3 from Table3 where xxxxx ) AS temp1 Order by field3
temp1是什么意思?查出来的结果是怎么放的?各个表的记录独立为一行,然后按我的要求排序?不好意思,我现在不在公司,明天试试……
jeffreck
高階會員


發表:247
回覆:340
積分:197
註冊:2003-01-23

發送簡訊給我
#6 引用回覆 回覆 發表時間:2004-03-04 22:27:01 IP:61.70.xxx.xxx 未訂閱
引言: temp1是什么意思?查出S的C果是怎么放的?各牧磲立o一行,然后按我的要求排序?不好意思,我c在不在公司,明天II……
我說說看 是把 查詢的結果放入到Temp1,如下 select Field1,Field2,Field3 from Table1 where xxxxx union ALL select Field1,Field2,Field3 from Table2 where xxxxx union ALL select Field1,Field2,Field3 from Table3 where xxxxx 之後再 Select Temp1 所以也可以下 Select temp1.Field1,temp1.Field2 From ( select Field1,Field2,Field3 from Table1 where xxxxx union ALL select Field1,Field2,Field3 from Table2 where xxxxx union ALL select Field1,Field2,Field3 from Table3 where xxxxx ) AS temp1 Order by temp1.Field3 ---------------- 說法怪怪的,不知是否了解< >< >
ffprince
初階會員


發表:66
回覆:62
積分:25
註冊:2003-08-16

發送簡訊給我
#7 引用回覆 回覆 發表時間:2004-03-04 22:42:27 IP:61.154.xxx.xxx 未訂閱
非常感谢!说得很清楚了,我明天回公司就马上试,还望多多赐教!
ffprince
初階會員


發表:66
回覆:62
積分:25
註冊:2003-08-16

發送簡訊給我
#8 引用回覆 回覆 發表時間:2004-03-08 00:11:43 IP:218.85.xxx.xxx 未訂閱
不好了!我是这么写的,运行后却报说“SQL命令未正确结束” Select * From ( select Field1,Field2 from Table1 where xxxxx union ALL select Field1,Field2,Field3 from Table2 where xxxxx union ALL select Field1,Field2,Field3,Field4 from Table3 where xxxxx ) AS temp1 Order by field1,Field2 怎么改?
Fishman
尊榮會員


發表:120
回覆:1949
積分:2163
註冊:2006-10-28

發送簡訊給我
#9 引用回覆 回覆 發表時間:2004-03-08 08:28:19 IP:210.65.xxx.xxx 未訂閱
Hi:    
SELECT  * 
FROM   (SELECT FIELD1,FIELD2,'' FIELD3,'' FIELD4 FROM TABLE1 WHERE XXXXX
        UNION ALL
        SELECT FIELD1,FIELD2,FIELD3,'' FIELD4 FROM TABLE2 WHERE XXXXX
        UNION ALL
        SELECT FIELD1,FIELD2,FIELD3,FIELD4 FROM TABLE3 WHERE XXXXX)
ORDER BY
        FIELD1,
        FIELD2
使用 Union 指令,須確認各個 Query Select 出來的欄位個數與 type 須一致 發表人 -
------
Fishman
Fishman
尊榮會員


發表:120
回覆:1949
積分:2163
註冊:2006-10-28

發送簡訊給我
#10 引用回覆 回覆 發表時間:2004-03-08 08:38:12 IP:210.65.xxx.xxx 未訂閱
Hi,    也可以這樣寫
SELECT FIELD1,FIELD2,'' FIELD3,'' FIELD4 FROM TABLE1 WHERE XXXXX
UNION ALL
SELECT FIELD1,FIELD2,FIELD3,'' FIELD4 FROM TABLE2 WHERE XXXXX
UNION ALL
SELECT FIELD1,FIELD2,FIELD3,FIELD4 FROM TABLE3 WHERE XXXXX
ORDER BY FIELD1,FIELD2
---------------------------------- 小弟才疏學淺,若有謬誤尚請不吝指教 ----------------------------------
------
Fishman
系統時間:2024-06-02 1:47:47
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!