請問一個sql語法 |
尚未結案
|
jacosun
一般會員 ![]() ![]() 發表:42 回覆:64 積分:21 註冊:2003-04-18 發送簡訊給我 |
|
a6475
高階會員 ![]() ![]() ![]() ![]() 發表:67 回覆:230 積分:154 註冊:2002-09-15 發送簡訊給我 |
引言: 今天假設資料庫有十個人,每個人都有100筆資料,所以總共為1000筆。 但是今天我每個人只要取50筆就好,請問條件值要怎麼設??請問你是用什麼資料庫? 在mysql 只要加limit SELECT * FROM XXX LIMIT 50 Access好像是top,不是很確定,有點忘了 SELECT TOP 10 * FROM XXX ..-----------βλμε------------.. ◎Oo月夜 光明 藍更愁oO◎ 藍調月光城v4:http://inping.myweb.hinet.net/ (暫時使用中..) 明日報(藍調.月光):http://mypaper2.ttimes.com.tw/user/a6475
------
月夜 光明 藍更愁 |
qoo1234
版主 ![]() ![]() ![]() ![]() ![]() ![]() 發表:256 回覆:1167 積分:659 註冊:2003-02-24 發送簡訊給我 |
|
jacosun
一般會員 ![]() ![]() 發表:42 回覆:64 積分:21 註冊:2003-04-18 發送簡訊給我 |
能否告之 ACCESS 跟 MS-SQL 謝謝
引言:引言: 今天假設資料庫有十個人,每個人都有100筆資料,所以總共為1000筆。 但是今天我每個人只要取50筆就好,請問條件值要怎麼設??請問你是用什麼資料庫? 在mysql 只要加limit SELECT * FROM XXX LIMIT 50 Access好像是top,不是很確定,有點忘了 SELECT TOP 10 * FROM XXX ..-----------βλμε------------.. |
qoo1234
版主 ![]() ![]() ![]() ![]() ![]() ![]() 發表:256 回覆:1167 積分:659 註冊:2003-02-24 發送簡訊給我 |
|
jacosun
一般會員 ![]() ![]() 發表:42 回覆:64 積分:21 註冊:2003-04-18 發送簡訊給我 |
|
sl@cableplus.com.cn
高階會員 ![]() ![]() ![]() ![]() 發表:168 回覆:359 積分:130 註冊:2004-03-26 發送簡訊給我 |
|
Miles
尊榮會員 ![]() ![]() ![]() ![]() ![]() ![]() 發表:27 回覆:662 積分:622 註冊:2002-07-12 發送簡訊給我 |
|
qoo1234
版主 ![]() ![]() ![]() ![]() ![]() ![]() 發表:256 回覆:1167 積分:659 註冊:2003-02-24 發送簡訊給我 |
|
cashxin2002
版主 ![]() ![]() ![]() ![]() ![]() ![]() 發表:231 回覆:2555 積分:1937 註冊:2003-03-28 發送簡訊給我 |
引言:引言: 最后5?你可以把?据?里重新排序,倒一下,取前5?SELECT top5 * FROM XXX 就行了mysql 有 1萬筆...要取該資料表最後五筆.. 什麼方式最快?不是ACCESS玩法喔
------
忻晟 |
jacosun
一般會員 ![]() ![]() 發表:42 回覆:64 積分:21 註冊:2003-04-18 發送簡訊給我 |
|
cashxin2002
版主 ![]() ![]() ![]() ![]() ![]() ![]() 發表:231 回覆:2555 積分:1937 註冊:2003-03-28 發送簡訊給我 |
您好﹗ 尚未試出較有效的方法﹐但有一個蠻原始的方法﹐步驟比較多﹐不知您是否愿意試用﹐方法如下﹕
分別將每個人的前50筆資料取出﹐加入到一個新的資料表中﹐再Select此新資料表﹐語法如下﹕
1﹒Select top 50 * into tablename_new from tablename where name='name1'
2﹒Insert into tablename_new select top 50 * from (select * from tablename where name='name2' (分別再加入其它人的前50筆資料)﹒﹒﹒略﹒﹒﹒
Select * from tablename_new 附﹕刪除此資料表的語法如下
Drop table tablename_new 參考看看﹗ =========================
大病初愈﹐休養調整中...
=========================
------
忻晟 |
jacosun
一般會員 ![]() ![]() 發表:42 回覆:64 積分:21 註冊:2003-04-18 發送簡訊給我 |
親愛的大大,我也是用這種方法做。只是我每找一個人就要重設一次人名。
想希望看有什麼sql的語法能一次就將資料表裡做好分類後取出每個人名前五十筆的資料。
資料表如下
name a1
j 2
j 3
j 1
. .
. .
k 20
k 1
. .
假設有兩個人就好,j 十筆資料,k也有十筆。我要用什麼sql 語法
才能一次查出j的前五筆資料,k的前五筆資料呢??(查詢出來共十筆資料)
引言: 您好﹗ 尚未試出較有效的方法﹐但有一個蠻原始的方法﹐步驟比較多﹐不知您是否愿意試用﹐方法如下﹕ 分別將每個人的前50筆資料取出﹐加入到一個新的資料表中﹐再Select此新資料表﹐語法如下﹕ 1﹒Select top 50 * into tablename_new from tablename where name='name1' 2﹒Insert into tablename_new select top 50 * from (select * from tablename where name='name2' (分別再加入其它人的前50筆資料)﹒﹒﹒略﹒﹒﹒ Select * from tablename_new 附﹕刪除此資料表的語法如下 Drop table tablename_new 參考看看﹗ ========================= 大病初愈﹐休養調整中... ========================= |
懷舊的人
高階會員 ![]() ![]() ![]() ![]() 發表:28 回覆:152 積分:141 註冊:2003-01-08 發送簡訊給我 |
|
jacosun
一般會員 ![]() ![]() 發表:42 回覆:64 積分:21 註冊:2003-04-18 發送簡訊給我 |
嗯嗯,這個的確是可以 ^^ 但是資料大的話...會掛吧@@!!
我忽然想到,萬一我不知道name的值呢??<==題外話,突然想到。
有沒有辦法不設name值呢??
引言: 這樣好嗎 SELECT TOP 50 A1,... FROM TABLE WHERE NAME = 'A1' UNION SELECT TOP 50 A2,... FROM TABLE WHERE NAME = 'A2' UNION SELECT TOP 50 A3,... FROM TABLE WHERE NAME = 'A3' .... UNION SELECT TOP 50 A10,... FROM TABLE WHERE NAME = 'A10'發表人 - jacosun 於 2004/07/09 16:48:36 |
Fishman
尊榮會員 ![]() ![]() ![]() ![]() ![]() ![]() 發表:120 回覆:1949 積分:2163 註冊:2006-10-28 發送簡訊給我 |
Hi jacosun, 以下有個 Oracle 的語法,至於 MS SQL .....
------
Fishman |
Fishman
尊榮會員 ![]() ![]() ![]() ![]() ![]() ![]() 發表:120 回覆:1949 積分:2163 註冊:2006-10-28 發送簡訊給我 |
|
jacosun
一般會員 ![]() ![]() 發表:42 回覆:64 積分:21 註冊:2003-04-18 發送簡訊給我 |
呵呵 目前用ACCESS做實驗丫,後面會在MS-SQL跑吧 ^^
引言: Hi jacosun, In MS SQL you canSELECT T.* FROM TEST T WHERE T.ID T.NAME IN (SELECT TOP 50 T1.ID T1.NAME FROM TEST T1 WHERE T1.ID = T.ID)至於紅色字體部分,你可以視需要自行調整 ps : 說句實話,我到現在還是搞不懂,你到底用何種 DataBase |
qoo1234
版主 ![]() ![]() ![]() ![]() ![]() ![]() 發表:256 回覆:1167 積分:659 註冊:2003-02-24 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |