2012-03-24 18 views
2

私はMySQLを使用していますが、現在、「30:47」や「30:47」のような時間(分と秒)を格納するVARCHARカラムを持っています。 00:25 "(25秒)。この列のSUM()やAVG()などの操作を実行して結果を返すようにするにはどうすればよいですか。MySQL 30分47秒(30分47秒)のような操作を行う方法

「00:35」と「00:45」でAVG()を実行した場合、「00:40」になります。最初に10進形式に変換してから操作してから変換し直す必要がありますか?または、これらの操作をサポートする列タイプがありますか?

+4

非常に、非常に不愉快な方法です。ちょうどTIME列を使用してください。 – Corbin

+2

本当にこの列を 'VARCHAR'ではなく' TIME'型として保存してください。 –

+0

私はx10000に投票することはできませんが、もしそれができたら... – haltabush

答えて

5

TIMEの列を使用してください。それは直感的にほとんどの操作をサポートします。

+0

ありがとう、私はそれを試してみます。 – Ray

+0

@レイ私はおそらく私はあなたが戻り値の型については注意する必要があります私の答えで述べている必要があります。たとえば、AVG呼び出しは、TIME型ではなく整数を返します。 – Corbin

関連する問題