次のスキーマがあります。
構成 1.構成名 2.構成値 3.otherDataInstanceId その他のデータ 1.データ名 2.データ値 3. インスタンス ID
otherDataInstanceId
OtherData のinstanceId
列への Configuration のリンク。MySQL にあるデータに対して次のクエリを実行しました。
SELECT other.datavalue AS time_stamp,
configs.configname AS configuration_name,
configs.configvalue AS configuration_value
FROM Configurations configs
JOIN OtherData other
WHERE configs.otherDataInstanceId=other.instanceId
AND other.dataname='timestamp'
GROUP BY configuration_name;
これらの結果が表示されることを期待していました。
2012-01-02 16:05:48 Voltage 10 volts
2000-01-01 12:00:09 Voltage 8 volts
2013-06-01 01:12:32 Voltage 28 volts
2013-07-01 01:12:32 Voltage 5 volts
代わりに私は見るだけです:
2012-01-02 16:05:48 Voltage 10 volts
私はオンラインで検索してきましたがGROUP BY
、結果を取得し、指定された列で行をグループ化することになっています。したがって、私のデータベースで GROUP BY を削除するconfigname
と、同じ値 ( 'Voltage'
) を持つ複数の が表示されます。したがって、それらを隣り合わせにグループ化する必要があります。しかし、4行ではなく、1行しか表示され'Voltage'
ません-なぜですか?