あなたの質問に基づくと、MySqlの前にクエリが正しく機能していたようです。 アップグレード。 MySqlをアップグレードしたので 、デフォルト設定が適用されています。これは、Only_Full_Group_Byを意味します。 有効になっています。したがって、Selectの非集計列が問題のようなクエリを実行する場合 リストはgroup byにありません 句では、Only_Full_Group_Byを無効にする必要があります 。
以下のステートメントを実行して、クエリを再度実行します:
SET GLOBAL sql_mode=(SELECT REPLACE(@@sql_mode,'ONLY_FULL_GROUP_BY',''));
警告:これは、選択リスト内の他の同意されていない列がtnumberごとに一意であることが確実な場合にのみ行う必要があります。 そうしないと、結果としてランダムな行が表示されます。
以下はMYSQL8.0マニュアルから引用されています:
詳細については、ここをクリック してください。 。