私たちは2つのmysql sql RDSサーバを持っており、解決できない問題に直面しています。私たちが使用しているクエリは、データセットからの最大日付行の単純な選択です。これは、同じデータセットであっても、他のサーバーで正しく動作しないため、最初のサーバーで正常に動作しています。2つの異なるMysql AWSサーバで同じ方法でSQLクエリが動作しない
我々が使用しているクエリは以下の通りです:
SELECT `name`,last_update_date FROM
(SELECT * FROM `table1` ORDER BY last_update_date DESC) X GROUP BY `name`;
なぜこれが起こっている、私はわかりません。私は両方のサーバーでグローバル変数をチェックして、新しいサーバーに存在していない以下の変数が見つかりました:すべてのヘルプは高く評価され
binlogging_impossible_mode
innodb_additional_mem_pool_size
innodb_mirrored_log_groups
innodb_use_sys_malloc
simplified_binlog_gtid_recovery
sql_log_bin
storage_engine
thread_concurrency
timed_mutexes
を。
を参照してください。 – Uueerdo
あなたは、GROUP BYへの悪名高いMySQL非標準拡張を悪用しています。 https://dev.mysql.com/doc/refman/5.7/en/group-by-handling.htmlその拡張機能*はあなたに予期しない結果を与えるために*好きです。 –
変数を比較する代わりに、両方のサーバーでEXPLAINによって生成された実行計画を比較することをお勧めします。 http://dev.mysql.com/doc/refman/5.7/en/explain.html –