私は Oracle データベースでの実行に慣れているため、この問題のトラブルシューティング方法がよくわかりません。クエリの簡単な例を次のように絞り込みました。
SELECT 0 as gm_rowID,
'-ALL Grantmakers-' as grantmakerName
FROM dual
GROUP BY 2
phpMyAdmin は、次のエラーで SQL を実行します。
#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 'ORDER BY 2 LIMIT 0, 30' at line 1
Oracle はこのクエリを問題なく実行できます。MySQL は、GROUP BY
句なしでクエリを実行できます。何か案は?
--クエリ全体は次のとおりです。
SELECT
p.grantmaker_rowid as gm_rowID,
gm.grantmaker_companyName as grantmakerName
FROM grantmaker_info gm, proposal_submission p
WHERE 0=0
AND p.grantmaker_rowid = gm.grantmaker_rowid
UNION
SELECT
0 as gm_rowID,
'-ALL Grantmakers-' as grantmakerName
FROM dual
ORDER BY 2
GROUP BY 2
LIMIT 0 , 30