mysql查詢保持in的順序

2021-05-27 16:22:36 字數 891 閱讀 5557

給出案例:

select b.userid as userid,

b.username as username,

b.domainid as domainid,

b.currentcorp as currentcorp,

b.headimg as imgpath,

b.imgserverid as imgserverpath

from   t_pvipuser a,   

t_pvipuserinfo b

where  a.id = b.userid

and a.id in (9,12,4,25,15) limit 0,5 order by field(a.id,?user_id )

查詢出來,如果都有值的話,那麼排列的順序以id的順序排列,即:4,9,12,15,25

如果in()中的id是我們顯示的優先級別,那麼這樣就體現不出來了。解決辦法:

select b.userid as userid,

b.username as username,

b.domainid as domainid,

b.currentcorp as currentcorp,

b.headimg as imgpath,

b.imgserverid as imgserverpath

from   t_pvipuser a,   

t_pvipuserinfo b

where  a.id = b.userid

and a.id in (9,12,4,25,15) order by field(a.id,9,12,4,25,15 ) limit 0,5

這樣就保持了原來的順序,即:9,12,4,25,15排列了。

希望能為您帶來方便!

MySQL的語句執行順序和子查詢執行順序

見原文吧 mysql的語句執行順序 houqijun 我再描述也沒人家好.參考 sql巢狀子查詢和相關子查詢的執行過程有什麼區別 推薦 南無 包含詳細的舉例和步驟說明 子查詢又稱內部查詢,而包含子查詢的語句稱之外部查詢 又稱主查詢 所有的子查詢可以分為兩類,即相關子查詢和非相關子查詢。執行過程 從外...

查詢 順序查詢

順序查詢的思路 從資料的第乙個元素開始,依次將掃瞄到的關鍵字和給定值key比較。若當前掃瞄到的關鍵字和key相等,則查詢成功 若掃瞄結束還沒有找到和key相等的元素,就表示查詢給定的值不在表中。時間複雜度 o n 優點 1.演算法簡單 2.對錶結構沒有任何要求,用順序表或者用鍊錶都可以。3.表中元素...

查詢 順序查詢

查詢 根據給定的某個值,在查詢表中確定乙個其關鍵字等於給定值的記錄或資料元素。若表中存在這樣的乙個記錄,則稱查詢是成功的,此時查詢的結果為給出整個記錄的資訊,或指示該記錄在查詢表中的位置。若表中不存在關鍵字等於給定值的記錄,則稱查詢不成功,此時查詢的結果可給出乙個空記錄或者空指標。本篇文章討論在靜態...