台灣最大程式設計社群網站
線上人數
768
 
會員總數:245215
討論主題:189089
歡迎您免費加入會員
討論區列表 >> MS SQL >> sql語法問題
[]  
[我要回覆]
1
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
sql語法問題
價值 : 5 QP  點閱數:852 回應數:9

樓主

520823
門外漢
0 6
77 12
發送站內信

捐贈 VP 給 520823
請問我有可能運用order by 和 dese 就將資料錄數字的排序由小到大,再由大到小,一直到最後一列嗎?
例如123 321 123 321......
還是有其他方法?





搜尋相關Tags的文章: [ sql語法 ] ,
本篇文章發表於2016-04-13 20:10
別忘捐VP感謝幫助你的人 新手會員瞧一瞧
1樓
最有價值解答

P陳
檢舉此回應
題目看沒???????????????????????????/
可以再多開示一點嗎?


學校作業嗎?
本篇文章回覆於2016-04-13 20:25
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
2樓
作者回應

520823
捐贈 VP 給 520823 檢舉此回應
是功課沒錯
我有25列資料,其中資料有5個1,5個2,5個3,5個4,5個5,我希望排序的方式是123455432112345543211234554321,
行得通嗎?
本篇文章回覆於2016-04-13 21:25
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
3樓
回應

P陳
檢舉此回應
1.我還是看不出你要的邏輯
2.堶惘 6個1,不是5個1
3.老師出的這個題目,您有什麼沒交待到嗎?
本篇文章回覆於2016-04-13 21:59
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
4樓
不錯的參考

彩虹
檢舉此回應
To P陳:
你還真的去數。。。傻眼
作者只是多打了一段54321
變成都是六個,不是只有1有六個

To 作者:
這功課真奇妙,你可以完整把需求再描述一遍嗎!不知道老師出這題目的用意是什麼呢

如果只有一個欄位,光是下遞增排序就會變1111122222333334444455555
除非題目可以自行新增一個欄位叫做「numSort」,並分別給予1~25的數值排序
大致上為這樣
Number numSort
1 1
2 2
3 3
4 4
5 5
5 6
4 7
3 8
2 9
1 10
. .
. .
依此類推
本篇文章回覆於2016-04-13 23:03
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
5樓
作者回應

520823
捐贈 VP 給 520823 檢舉此回應
我想獲得的知識是,SQL有由小排到大(order by)及由大排到小(dese)的語法,
那有沒有可以order by 和 dese 交互使用的方式,
1-5列由小排到大,6-10列由大排到小,11-15列由小排到大,16-20列由大排到小......
本篇文章回覆於2016-04-13 23:08
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
6樓
作者回應

520823
捐贈 VP 給 520823 檢舉此回應
我有一堆1-n的數字,
那我希望資料庫可以幫我排出
1-n, n-1,1-n,n-1...一直到把數字排完,
本篇文章回覆於2016-04-13 23:20
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
7樓
作者回應

520823
捐贈 VP 給 520823 檢舉此回應
例如:
name number
兔子 1
猴子 2
兔子 1
猴子 2
獅子 3
馬 4
獅子 3
馬 4


我希望變成
兔子 1
猴子 2
獅子 3
馬 4
馬 4
獅子 3
猴子 2
兔子 1

單純sql+程式可行嗎?
還是我新開個資料庫,從原資料庫取資料寫入,那種比較可能成功?
本篇文章回覆於2016-04-13 23:59
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
8樓
不錯的參考

真的有點難
檢舉此回應
1-5列由小排到大,6-10列由大排到小,11-15列由小排到大,16-20列由大排到小
那你要把資料列先編號
select id=identity(int,1,1),* into #temp from [dbo].[TB1]

create table #結果(欄位 int)

insert #結果
select 排序的欄位 from #temp where id between 1 and 5 order by 排序的欄位

insert #結果
select 排序的欄位 from #temp where id between 6 and 10 order by 排序的欄位 desc


insert #結果
select 排序的欄位 from #temp where id between 11 and 15 order by 排序的欄位

insert #結果
select 排序的欄位 from #temp where id between 16 and 20 order by 排序的欄位 desc

select * from #結果
本篇文章回覆於2016-04-14 06:50
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
9樓
作者回應

520823
捐贈 VP 給 520823 檢舉此回應
真的好難,,,,
本篇文章回覆於2016-04-14 12:04
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
   
1

回覆
如要回應,請先登入.