No.4ベストアンサー
- 回答日時:
>私が知りたいのはコーディング時、SQL関数(RTRIM、nullだったら別の値に置き換えるValue関数など)をふんだんに使って問題ないのか、それともSQLは最小限にしてデータの編集などはJavaで行ったほうがいいのか、ということです。
RTRIMに関しては特に性能落ちる要素が見当たりませんので、使って良いと思いますが、後はプロジェクトでDB担当している人に聞いたほうが良いと思います。
言えるのは関数によってはインデックスを使いようがないケースが出てくるので性能が出ない場合があるということです。
どんな関数を使えばインデックスを使わないかはBtreeインデックスの仕組みを考えれば大体想像はつくと思いますが、分からないうちはアクセスパスとか見て検証すれば良いと思います。
DB得意な人から見ればSQLで解決したほうが良い問題もJAVAが得意な人から見ればJAVAで解決したほうが良いということもあると思います。
僕はDBよりなのでSQL関数はじゃんじゃん使うほうです。
No.3
- 回答日時:
#2です。
少し補足します。
統計情報(runstatsコマンド)はとっていますか?
もしやっていない場合はrunstatsコマンドを実行することでパフォーマンスが改善する場合が多いです。
runstats on table <schema>.<table> and indexes all
この回答へのお礼
お礼日時:2005/03/30 23:21
情報、どうもありがとうございます。
ただ、私はDBのカスタマイズは業務ではやっていないです。
私が知りたいのはコーディング時、SQL関数(RTRIM、nullだったら別の値に置き換えるValue関数など)をふんだんに使って問題ないのか、それともSQLは最小限にしてデータの編集などはJavaで行ったほうがいいのか、ということです。
No.1
- 回答日時:
使い方によります。
Aにインデックスが張ってあるとき、
○ select A from テーブル where A=RTRIM('123 ')
× select A from テーブル where RTRIM(A)='123'
下の場合、インデックスが設定されている項目に関数を使用すると、インデックスが使用されなくなります。
このため、速度低下が起こります。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) EXCELの「接続」のSQLのコマンド文字列にて、セルから任意の数値を利用したい 2 2023/03/09 16:43
- SQL Server SQL ServerでDBを構築。これは開発? 4 2022/05/28 14:10
- Visual Basic(VBA) データベースから絞り込んでデータを読み込み 1 2023/02/21 19:51
- JavaScript Python Java,Springフレームワークの習得 1 2023/08/02 15:28
- Excel(エクセル) Excel同士のデータの突合 3 2023/08/07 16:34
- MySQL xlmのSQLに関して ITに触れて、数ヶ月で疑似の予約サイトを作っているものです。 独自のmapp 1 2022/06/15 18:03
- PHP PHP MySql ページング 2 2022/09/20 06:38
- Oracle SQLについて教えて下さい。 主キーを持ったカラムを主キーの機能を持たせたまま カンマ区切りで文字列 1 2023/03/27 22:47
- SQL Server [SQLServer] テーブル名からカラム名を取得する 1 2022/08/23 21:20
- SQL Server SQLについて質問です。 a表がありその表には従業員名を保存するname列があります。 LIKE演算 1 2022/05/17 17:49
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
[ BETWEEN ] vs [ >= AND <= ]
-
インデックスがすぐに壊れます…
-
インデックスの再構築の意味っ...
-
キーワード検索の方法
-
主キーにインデックスは貼らな...
-
【SQLServer】IS NULLのパフォ...
-
mysql IN句に1データだけ指定...
-
indexの使用頻度を調べる方法
-
「マスタ」と「テーブル」の違...
-
2つのテーブルから条件に一致...
-
SELECT時の行ロックの必要性に...
-
accessテーブル作成クエリを実...
-
データの二重表示の原因
-
重複するキーから一番古い年月...
-
ACCESS2007 フォーム 「バリア...
-
accessのロック
-
ACCESSのSQLで、NULLかNULLでな...
-
accessからSQLサーバへの移行。
-
ACCESS 一番最新の日付の金額...
-
場合によって条件を変えるSQL
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
[ BETWEEN ] vs [ >= AND <= ]
-
主キーにインデックスは貼らな...
-
【SQLServer】IS NULLのパフォ...
-
インデックスの再構築の意味っ...
-
mysql IN句に1データだけ指定...
-
ビューにインデックスを設定で...
-
年と月が別カラムの場合のSQL
-
サーバ負荷を抑える大量データ...
-
outlook2007 検索できないんです
-
コクヨ タイトルブレーンでイ...
-
ホームページがGOOGLEにインデ...
-
画像の赤丸で囲っている、角丸...
-
MS-DOS時代のデーターベ...
-
Google検索はなぜ早い?
-
複数のDBでjoinする場合のindex...
-
テキスト項目255ケタのメリット...
-
数学でunprimedとは何を意味し...
-
『ラミネートインデックスシー...
-
SQLiteで... like を早くする
-
SQL関数とレスポンスについて
おすすめ情報