<テーブル>
年月日、号機、装置温度、外気温度、時刻
Oracle8において上記のテーブルが有り、復数台の装置に関して
毎日365日データを蓄積しています。
ある一定期間の範囲で、月毎に装置ごとに装置温度の最高、最低、平均、
求めたいのですが、select文はどのように記述したらよいのでしょうか。
select 号機, MAX(装置温度),min(装置温度),avg(装置温度)
from テーブル
where sdate between '2009/08/01' and '2009/08/02'
group by 号機;
上記のような記述で、一定期間における最大、最低、平均は求まりました。
これを月毎に求めたいのです。
結果は以下のように表示させたいと考えています。
号機、8月装置最大温度、8月装置最低温度、8月装置平均温度、9月装置最大温度、9月装置最低温度、9月装置平均温度…
よろしくお願いします。
MY SQLでプログラムを作成してますがうまくいきません。
PLAYERS表
ーーーーーーーーーーーーーーー
l PID(選手ID)lPNAME(選手名)l
lーーーーーーーーーーーーー--l
主キーはPID
で、
create table PLAYERS
(
PID char (4),
PNAME varchar,
primary key(PID)
);
と入力するとエラーが出ます。
エラーメッセージは、
ERROR 1064(42000):You have an error in your SQL syntax,check the manual tthat corresponds to your my SQL server version for the right syntax to use near'primary key(PID)
)' at line 4
と表示されます。
自分では、ちゃんと表の定義をして正しいと思うのですが?
MY SQLでプログラムを作成してますがうまくいきません。
PLAYERS表
ーーーーーーーーーーーーーーー
l PID(選手ID)lPNAME(選手名)l
lーーーーーーーーーーーーー--l
主キーはPID
で、
create table PLAYERS
(
PID char (4),
PNAME varchar,
primary key(PID)
);
と入力するとエラーが出ます。
エラーメッセージは、
ERROR 1064(42000):You have an error in your SQL syntax,check the manual tthat corresponds to your my SQL server version for the right syntax to use near'primary key(PID)
)' at line 4
と表示されます。
自分では、ちゃんと表の定義をして正しいと思うのですが?
いつもお世話になってます。
他プロジェクトのまた聞きなのですが。。。。
oracle9iからoracle10gにバージョンアップを行いました。
数日後、数千万件にバインド変数でアクセスするSQLがインデックスを使用せず、フルアクセスしてしまい、トラブルとなりました。
この事象はCBOのデメリットなので、納得なのですが。
1.トラブル発生前は該当SQLはINDEX RANGE SCANを使用していた。
2.トラブル対処として、ヒント句を使用すると、INDEX FULL SCANになってしまい、結果として遅くなってしまった。
前置きが長くなりましたが、ヒント句を使用してINDEX FULL SCANになってしまった場合、明示的にINDEX RANGE SCANを適用させる方法はあるのでしょうか?
ネット検索してもそのような方法を見つけることができませんでした。
いつもお世話になってます。
他プロジェクトのまた聞きなのですが。。。。
oracle9iからoracle10gにバージョンアップを行いました。
数日後、数千万件にバインド変数でアクセスするSQLがインデックスを使用せず、フルアクセスしてしまい、トラブルとなりました。
この事象はCBOのデメリットなので、納得なのですが。
1.トラブル発生前は該当SQLはINDEX RANGE SCANを使用していた。
2.トラブル対処として、ヒント句を使用すると、INDEX FULL SCANになってしまい、結果として遅くなってしまった。
前置きが長くなりましたが、ヒント句を使用してINDEX FULL SCANになってしまった場合、明示的にINDEX RANGE SCANを適用させる方法はあるのでしょうか?
ネット検索してもそのような方法を見つけることができませんでした。