MySQLのクエリは、問題のエイリアスレコードを得ている必要があります

最近、互換性のあるMySQLのSQLを実行し、OracleのSQLであることが判明し実行するためにmysqlデータベース内のことを確認しなければならない
ビジネスシナリオを:オリジナルは、OracleのSQLクエリーを持つ子供が正常動作することができている、MySQLへ移動し、エラーメッセージがエラーを発見しました以下のような:

すべての派生テーブルは、独自の別名を持っている必要があります

このエラーは、導出問合せ結果は、SQLなどの別名を持っていなければならないことを意味します。

select * from (select a.id , a.name from A)  limit 0,1

若しくは

select count(1) from (select a.id , a.name from A)  

などのOracleのクエリは正常ですが、MySQLのエラーになり、解決策は、個々のサブクエリ名を追加することです

select * from (select a.id , a.name from A) t  limit 0,1

若しくは

select count(1) from (select a.id , a.name from A)  t

[OK]を、個々の名前を追加した後、SQL魅力は、通常の動作、MySQLとOracle構文の類似点と相違することができ、私の以前のブログを参照することができます:https://blog.csdn.net/u014427391/article/details/87307903

おすすめ

転載: www.cnblogs.com/mzq123/p/11470605.html