如何使用「WHERE IN」子句保留條件查詢中的行順序?

Barbara Streisand
發布: 2024-10-27 02:39:03
原創
449 人瀏覽過

How Can I Preserve Row Order in Conditional Queries Using `WHERE IN` Clause?

在條件查詢中保留行順序

問題:

使用WHERE IN 子句時,行通常是排序的依ORDER BY 子句中指定的列升序排列。但是,在某些情況下,需要保持 IN 子句中指定的行順序。

解決方案:

要實現此目的,您可以使用按字段排序功能。此函數根據其參數中指定的順序對行重新排序。

範例:

考慮以下查詢:

SELECT *
FROM table
WHERE id IN (118, 17, 113, 23, 72);
登入後複製

此查詢將傳回依 id 升序排序的行。若要保留 IN 子句中指定的行順序,您可以使用以下修改後的查詢:

SELECT *
FROM table
WHERE id IN (118, 17, 113, 23, 72) 
ORDER BY FIELD(id, 118, 17, 113, 23, 72)
登入後複製

透過指定所需的順序作為 FIELD 函數的參數,行將重新排序以符合該順序訂購。

以上是如何使用「WHERE IN」子句保留條件查詢中的行順序?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!