類似java中swith case語句的sql語句

2021-07-05 03:31:08 字數 387 閱讀 3286

在專案中涉及到一些排序的問題,比如說一張論壇表topic中,分為置頂帖,精華帖,普通帖,需要將置頂帖排在最上面,精華帖和普通帖不做順序區分。此時設定精華帖的type為2,精華帖的type為1,普通帖為0,此時便可以運用下面的hql語句。

from topic t where t.forum=? order by (case t.type when 2 then 2 else 0 end) desc, t.lastupdatetime desc

其中case t.type when 2 then 2 else 0 end 的意思為,當type為2的時候type為2,當type不為2的時候按照0處理,也就是說1 和 0 都按照0進行排序,所以最終的結果會將type為2的放在最上面,type為0和1的普通帖與精華帖不做順序區分。

Java中類似c中memset的方法

c語言的memset 語法 include void memset void buffer,int ch,size t count 功能 函式拷貝ch 到buffer 從頭開始的count 個字元裡,並返回buffer指標。memset 可以應用在將一段記憶體初始化為某個值。例如 memset th...

python中類的組成 Python中類似C的結構

更新 資料類 通過引入資料類中的python 3.7,我們非常接近。下面的示例類似於下面的namedtuple示例,但是結果物件是可變的,並且允許使用預設值。from dataclasses import dataclass dataclass class point x float y float...

VC中類似VB的DoEvents函式

在乙個程式中,如果有乙個耗時很長的程式段 比如說乙個100萬次的迴圈 程式在執行這段程式時會象死掉一樣。vb中提供doevents函式來解決這個問題。對於vc 來說,除了用多執行緒,還可以用下面的函式,起到類似於doevents的功能 bool checkmessagequeue return tr...