首頁 >資料庫 >mysql教程 >如何確定資料庫查詢中特定行的優先順序?

如何確定資料庫查詢中特定行的優先順序?

Mary-Kate Olsen
Mary-Kate Olsen原創
2024-12-30 05:32:09976瀏覽

How to Prioritize Specific Rows in Database Queries?

先傳回具有特定值的行

在某些資料庫查詢中,可能需要優先顯示包含特定值的行。例如,考慮下面的表:

表:Users

id name city
1 George Seattle
2 Sam Miami
3 John New York
4 Amy New York
5 Eric Chicago
6 Nick New York

如果我們希望先檢索城市列包含“New York”的行,然後檢索按城市的字母順序排列,我們可以使用以下查詢:

SQL Server、Oracle和DB2:

ORDER BY CASE WHEN city = 'New York' THEN 1 ELSE 2 END, city

此查詢使用 CASE 表達式為以「New York」作為城市值的行分配優先權 1,否則優先權為 2。然後,ORDER BY 子句使用此優先權以及城市列進行排序。因此,將首先傳回包含「New York」的行,然後傳回按城市字母順序排列的其餘行。

以上是如何確定資料庫查詢中特定行的優先順序?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn