簡體   English   中英

排序依據:兩列之間的差異

[英]Order by: Difference between two columns

我對sql查詢有疑問。 我在表用戶中有兩列:

本周貨幣總數和貨幣

現在,我想對結果進行排序。 Moneytotal和Moneythisweek之間的差異越大,排名越高。

通常我使用:

$lsel_rank = mysql_query("select * from users ORDER BY Moneytotal DESC");
$rank = mysql_fetch_array($lsel_rank);

但是現在我想做類似的事情:

lsel_rank = mysql_query("select * from users ORDER BY Difference between Moneytotal         
AND Moneythisweek DESC");

誰能幫我?

SELECT * FROM `users` ORDER BY Moneytotal - Moneythisweek DESC

只是簡單地使用這個

$lsel_rank = mysql_query("select *,'moneytotal - monethisweek' as difference from users ORDER BY difference DESC");

選項1 :(按orderby進行計算)

SELECT * FROM `users` ORDER BY (Moneytotal - Moneythisweek) DESC;

選項2 :(按順序使用編號索引並計算差值並在選擇查詢的結果集中可用

SELECT (Moneytotal - Moneythisweek) difference, a.*  FROM `users` a ORDER BY 1 DESC;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM