サブメニューでメニューを作成したい。したがって、menu_cat
をメインメニュー(表示しない)としてmenu
をサブメニューにしてmenu_cat
と表示するだけです。
DISTINCTやGROUP BYのような句は、行全体に作用するように見えます。検索の結果、私はこのリンクに出くわしました:DISTINCT for only one Column
これはまさに私がやろうとしていることです。しかし、私はエラーが発生しています。以下は私のクエリとPhpmyadminのエラーです。このエラーを修正するのを手伝ってください。
$query = "Select * FROM ('SELECT menu_cat,menu,manu_href,ROW_NUMBER() OVER(PARTITION BY menu_cat ORDER BY menu_id DESC) rn FROM menu')a WHERE rn = 1";
エラー:
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''SELECT menu_cat,menu,manu_href,ROW_NUMBER() OVER(PARTITION BY menu_cat ORDER BY' at line 1
$query2 = "select menu_cat OVER (PARTITION BY menu_id) AS Cat,menu,menu_href from menu"
エラー:
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '(PARTITION BY menu_id) AS Cat,menu,menu_href from menu LIMIT 0, 30' at line 1
あなたのクエリはT-SQL SQL Server用であり、MYSQL用ではないと思います。 –
@ Dr.Stitch、どうすればmysqlのために変更できますか? – 112233
サブミットで不要な[ROW \ _NUMBER()in MySQL](http://stackoverflow.com/questions/1895110/row-number-in-mysql) –