0
こんにちは、私はプロジェクトに取り組んでいます。これは、本番マシン上のMySQLのバージョンが私がローカルに持っているバージョンと異なっていることが判明しました。ローカルでは、生産上のエラーが発生します。次のように古いバージョンのMySQLでクエリが失敗する
失敗したクエリの例は次のとおりです。
私の地元のバージョンで正常に動作しますSELECT MONTH(date) month
, YEAR(date) year
, SUM(distinct_totals.total) balance
FROM
(SELECT DISTINCT totals.*
, trans_data.date
FROM totals
JOIN trans_data
ON totals.trans_data_id = trans_data.id
WHERE totals.id IN (1085)
AND trans_data.date BETWEEN '2016-04-05' AND '2017-04-04'
) distinct_totals
GROUP
BY year
, month
:
Ver 14.14 Distrib 5.7.18
しかし、エラーを与える:バージョンで
Mysql2::Error: Unknown column 'totals.*' in 'field list'
:
Ver 14.14 Distrib 5.6.31
バージョン間でどのような変更がこれを引き起こしたのかはっきりした理由はありますか?
'amount。*'はこのクエリにはありません。だからどこからのエラー?他に関連するクエリはありますか? – Sinto
'DISTINCT totalals。*、'で十分です。 – Sinto
ありがとう、私は今、それが新しいバージョンではなく古いもので動作する理由を説明するドキュメントを知っていますか?ちょうど私の自身の参照のために。 – user2320239