0

だから私は2つのテーブルを持っているとしましょう。

テーブル ユーザー:

ID | 名前 | 日にち

テーブル weight_tracking;

ID | ユーザー ID | 以前の体重 | 現在の体重 | 日にち

weight_tracking テーブルは、ユーザーの現在の体重と以前の体重で毎日更新されています。

私は、previous_weight - current_weight で注文したすべてのユーザーを表示しようとしています (したがって、体重の差によって、最も多くの体重を失った人が最初に表示されます)。

1回の呼び出しでそれを行うことができますか?

4

1 に答える 1

0
SELECT users.*, weight_tracking.*
FROM users left join weight_tracking on users.id = weight_tracking.user_id
ORDER BY previous_weight - current_weight desc

ユーザーが weight_tracking テーブルに複数の行を持つことができる場合、次のようなものを使用できます。

SELECT users.*
FROM users left join weight_tracking on users.id = weight_tracking.user_id
GROUP BY users.id
ORDER BY max(previous_weight) - min(current_weight) desc
于 2012-12-10T20:37:30.213 に答える