web-dev-qa-db-ja.com

ORDER BY 5 DESCとはどういう意味ですか?

SELECT Departamentos.Nome_Dep,  
       Funcionarios.Nome AS Funcionario,
       Funcionarios.Salario,
       AVG(Funcionarios.Salario) OVER(PARTITION BY Departamentos.Nome_Dep) "Média por Departamento"
       Salario - AVG(Funcionarios.Salario) OVER(PARTITION BY Departamentos.Nome_Dep) "Diferença de Salário"   FROM Funcionarios
INNER JOIN Departamentos
    ON Funcionarios.ID_Dep = Departamentos.ID
ORDER BY 5 DESC

Order By5は私を失望させています。私はそれのようなものは一度もありません。 Order By [colunmname]はい、しかしOrder By [number]、これまでに見たことはありません。私はこれを記事から外しました。

注:これはT-SQLです。

出典: SQL Server 2005、2008、2012のウィンドウ関数

15
dotnetN00b

これは、このSELECTステートメントの5番目のフィールドで並べ替えられます

27
Cory

結果セットの5列目から降順に並べ替えます。

5
Mikael Eriksson

結果セットの5番目の列で並べ替えます。

5
Jonathan Allen

番号は、選択リスト内の列のインデックスを表します。

出典: http://mattberseth.com/blog/2007/05/quick_tip_order_by_1_descendin.html

3
Polynomial

同様の列名が計算された出力フィールドになった場合に便利です。

次の例では、この列名が(同じ古い列データの)クエリ出力SUMフィールドの名前になっているため、「order bynumberofVioation」と言うと混乱します。

そのため、計算された出力フィールドで役立ちます

例:

元のフィールド:

名前|タイプ| RiskLevel |日付|結果|違反|

/ *各タイプに違反の合計を追加します。plsnote'orderby 2 desc 'は、2番目にクエリされた列による順序を指します。つまり、hiからlow * /

type、sum(numberOfViolations)をrestaurantsTableからのnumberOfViolationsとして選択します。

0
r poon

それは相対位置によるソートです。

SQL ORDER BY句を使用して、結果セットの相対位置で並べ替えることができます。結果セットの最初のフィールドは1で、次のフィールドは2というように続きます。この場合、結果セットの5番目のフィールドで並べ替えます。

http://www.techonthenet.com/sql/order_by.php SQLのorderbyについて説明します。

0
Athul

結果セットの5番目のフィールドで並べ替えます。

0
NitzyJ