Laboratory of Mobile Agricultural Chemicals Searcher
携帯農薬検索実験室

研究会

  ツリー表示 ┃スレッド表示 ┃一覧表示 ┃トピック表示 ┃番号順表示 ┃検索  
65 / 114 ツリー <前へ | 次へ>

〔463〕ACFinder 060828版 kabe (06/08/28 23:07)

〔470〕Re:通称の代表適用の変更機能 Hidemi Oya (06/08/31 16:42)

〔470〕Re:通称の代表適用の変更機能
 Hidemi Oya WEB  (06/08/31 16:42)

引用なし
   自己レスです。

> 現在は、登録番号が若いものが代表適用として使用されるようですが、これを逆に古いものにするか、
 vTsushoTekiyo を登録番号の逆順に並び替えたらできるかなと思って、私のチェックシステム上で vTsushoTekiyo の最後に「ORDER BY bango DESC」を追加してみたら、登録番号の古いものが選択されるようにはなりました。検索速度がやや遅くなるという副作用がありますけど。

>屋号なし農薬名があるものは屋号なしを代表適用
 こちらについても、上記と同様に vTsushoTekiyo の最後に「ORDER BY LENGTH(meisho) DESC」を追加するといけそうです。ただし、これはかなり検索に時間がかかります。

> できれば、こういった事例に気がついた段階で、ユーザが指定した剤で通称の代表適用を書き換えるような機能があると良いですね。
 考えてみたら、vTsushoTekiyo は実テーブルではなくビューなので、これは無理ですね(^_^;)。UTF-16 対応によっていくらかデータベースサイズが削減できたので、vTsushoTekiyo をビューではなく実テーブルにするという手もアリかなという気はしますが…。

 話は変わりますが、現在 vTekiyo, vTsushoTekiyo は tekiyo のビューとして作られているので、ビューのビューになります。vTekiyo, vTsushoTekiyo を使うと tekiyo に比べて圧倒的に検索が遅くなるのは、これが原因のようです。vTsushoTekiyo を下記のように作ると、検索速度が劇的に改善します。最後に「ORDER BY m_tekiyo.bango DESC」を追加しても、従来の vTsushoTekiyo を使った場合より速いくらいです。
 ビューのビューはサブクエリと同じになるせいですかねえ? あるいは、ビューのビューではインデックスが使えないとか? 詳細は不明ですが、いずれにしてもネストしたビューは可能な限り避けた方が良さそうです。

CREATE VIEW vTsushoTekiyo AS
SELECT
 sakumotsu, byochu, mokuteki, shurui, tsusho,
 jiki, baisu, ekiryo, hoho, basho, jikan, ondo, dojo, chitai,
 tekiyaku, kongo, kaisu,
 seibun1, kaisu1, seibun2, kaisu2, seibun3, kaisu3,
 seibun4, kaisu4, seibun5, kaisu5, yoto, zaikei
FROM m_tekiyo
LEFT JOIN m_kihon ON m_tekiyo.bango = m_kihon.bango
--ORDER BY m_tekiyo.bango DESC
--ORDER BY LENGTH(meisho) DESC

  ツリー表示 ┃スレッド表示 ┃一覧表示 ┃トピック表示 ┃番号順表示 ┃検索  
65 / 114 ツリー <前へ | 次へ>
ページ:  ┃  記事番号:   
(SS)C-BOARD vv3.8 is Free.