0

user と submit という名前の 2 つのテーブルがあります。自然に参加したい。次に、それらを列ごとにグループ化します。次に、2 つの列を選択します。それらにエイリアスを付けます。そして、それらを特定のエイリアスで並べ替えます。

私のコードを以下に示します。

select name, count(result) as name, tried from user
natural join submission group by name sort by tried; 

ただし、これは機能しません。エラーが発生します:

1064 - SQL 構文にエラーがあります。MySQL サーバーのバージョンに対応するマニュアルで、2 行目の「sort by count(result) LIMIT 0, 30」付近で使用する正しい構文を確認してください。

4

2 に答える 2

3

同じ名前の結果が 2 つあります。

select name, <-- 1st "anme"
count(result) as name, <-- 2nd name
tried from user natural join submission group by name order by tried; 

COUNT の結果のエイリアスを変更するだけなので、修正は簡単です。

select name, 
count(result) as result_count, 
tried from user natural join submission group by name order by tried; 
于 2012-11-18T02:51:19.730 に答える
1
select name, 
count(result) as result_count, 
tried from `user` natural join submission group by name ORDER by tried;
于 2012-11-18T03:08:46.337 に答える