第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

按SQLIN()子句中值的順序排序

按SQLIN()子句中值的順序排序

互換的青春 2019-06-23 17:07:11
按SQLIN()子句中值的順序排序我想知道是否有其他(可能是更好的方法)按照IN()子句中的值的順序進(jìn)行排序。問題是,我有兩個(gè)查詢,一個(gè)查詢獲取所有ID,另一個(gè)查詢檢索所有信息。第一個(gè)創(chuàng)建ID的順序,我希望第二個(gè)ID按順序排序。ID以正確的順序放在IN()子句中。所以它應(yīng)該是(非常簡(jiǎn)化的):SELECT id FROM table1 WHERE ... ORDER BY display_order, nameSELECT name, description, ... WHERE id IN ([id's from first])問題是,第二個(gè)查詢沒有按照ID被放入IN()子句的順序返回結(jié)果。我找到的一個(gè)解決方案是將所有ID放入一個(gè)具有自動(dòng)遞增字段的臨時(shí)表中,然后將該字段加入到第二個(gè)查詢中。還有更好的選擇嗎?注:由于第一個(gè)查詢是“由用戶”運(yùn)行的,而第二個(gè)查詢是在后臺(tái)進(jìn)程中運(yùn)行的,因此無法使用子查詢將2合并為1個(gè)查詢。我正在使用MySQL,但我認(rèn)為讓它注意到其他DB也有哪些選項(xiàng)可能是有用的。
查看完整描述

3 回答

?
海綿寶寶撒

TA貢獻(xiàn)1809條經(jīng)驗(yàn) 獲得超8個(gè)贊

請(qǐng)參見如何獲取排序數(shù)據(jù)。

SELECT ...
  FROM ...
 WHERE zip IN (91709,92886,92807,...,91356)
   AND user.status=1ORDER 
    BY provider.package_id DESC 
     , FIELD(zip,91709,92886,92807,...,91356)LIMIT 10


查看完整回答
反對(duì) 回復(fù) 2019-06-23
?
縹緲止盈

TA貢獻(xiàn)2041條經(jīng)驗(yàn) 獲得超4個(gè)贊

出現(xiàn)在人們腦海中的解決方案有兩種:

  1. order by case id when 123 then 1 when 456 then 2 else null end asc

  2. order by instr(','||id||',',',123,456,') asc

(instr()來自甲骨文,也許你有locate()charindex()或諸如此類的東西)


查看完整回答
反對(duì) 回復(fù) 2019-06-23
  • 3 回答
  • 0 關(guān)注
  • 1427 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)