Re: 病害虫分類及び害虫グループ付き m_byochu
OhYeah!
投稿数: 983
オンライン

害虫グループ付きの m_byouchu です。グループ分けがちゃんとできているかどうかは、例によって検証していません
。1か所、'%ハナバエ%' とすべきところが 'ハナバエ' になっていたのは修正しました。
また、ふりがな機能が未実装なので、今回は別名登録はしていません。
2010.11.4 9:30
「グループ無し」の処理を追加、複数害虫の処理変更

また、ふりがな機能が未実装なので、今回は別名登録はしていません。
2010.11.4 9:30
「グループ無し」の処理を追加、複数害虫の処理変更
--/d
drop table if exists t_byochu;
create temp table t_byochu as select distinct byochu from m_tekiyo order by byochu;
drop table if exists m_byochu;
create table m_byochu (idbyochu integer primary key autoincrement, byochu varchar unique, cid integer, gid integer);
begin transaction;
insert into m_byochu (byochu, cid) select byochu, (select cid from spec.cbyochu where cname = 'その他') as cid from t_byochu where ifnullstr(byochu, '-') != '-';
--分類処理
update m_byochu set cid = (select cid from spec.cbyochu where cname = '鳥獣') where byochu in (select distinct byochu from m_tekiyo where mokuteki = '忌避' or bango in (select bango from m_kihon where koka like '%忌避%'));
update m_byochu set cid = (select cid from spec.cbyochu where cname = '害虫') where byochu in (select distinct byochu from m_tekiyo where mokuteki in ('誘引', '交尾阻害') or bango in (select bango from m_kihon where yoto like '殺虫%' or koka like '%誘引' or koka like '%殺虫%'));
update m_byochu set cid = (select cid from spec.cbyochu where cname = '雑草') where byochu like '%雑草%' or byochu in (select distinct byochu from m_tekiyo where bango in (select bango from m_kihon where yoto = '除草剤'));
update m_byochu set cid = (select cid from spec.cbyochu where cname = '病害') where byochu like '%病%' or byochu like'%症%' or byochu like '%菌%' or byochu like '%腐%' or byochu like '%タケ';
update m_byochu set cid = (select cid from spec.cbyochu where cname = 'その他') where byochu like '%活性化%' or byochu like '%覚醒%';
--分類例外処理
update m_byochu set cid = (select cid from spec.cbyochu where cname = '害虫') where byochu like '%ナメクジ' or byochu like '%ハダニ%';
update m_byochu set cid = (select cid from spec.cbyochu where cname = '鳥獣') where byochu in ('イノシシ', 'カモシカ', 'ニホンジカ', 'モグラ', '野ウサギ', '野ソ', '害獣');
--害虫G初期化
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'グループ無し') where cid = (select cid from spec.cbyochu where cname = '害虫');
--害虫G優先処理1
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'アリG') where cid = (select cid from spec.cbyochu where cname = '害虫') and byochu like '%アリ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'ケラG') where cid = (select cid from spec.cbyochu where cname = '害虫') and byochu like '%ケラ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'コガG') where cid = (select cid from spec.cbyochu where cname = '害虫') and byochu like '%コガ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'セミG') where cid = (select cid from spec.cbyochu where cname = '害虫') and byochu like '%ゼミ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'ダニG') where cid = (select cid from spec.cbyochu where cname = '害虫') and byochu like '%ダニ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'ヤガG') where cid = (select cid from spec.cbyochu where cname = '害虫') and byochu like '%ヤガ%';
--害虫G優先処理2
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'スズメガG') where cid = (select cid from spec.cbyochu where cname = '害虫') and byochu like '%スズメ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'アゲハG') where byochu like '%アゲハ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'ケムシG') where byochu like '%ケムシ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'イラガG') where byochu like '%イラガ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'ウスバG') where byochu like '%ウスバ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'ウンカG') where byochu like '%ウンカ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'カレハガG') where byochu like '%カレハ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'キバチG') where byochu like '%キバチ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'シジミチョウG') where byochu like '%シジミ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'シャクガG') where byochu like '%シャク%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'チビガG') where byochu like '%チビガ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'トラガG') where byochu like '%トラガ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'トリバガG') where byochu like '%トリバ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'ネダニG') where byochu like '%ネダニ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'ハダニG') where byochu like '%ハダニ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'ハバチG') where byochu like '%ハバチ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'ハムシG') where byochu like '%ハムシ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'ヒトリガG') where byochu like '%ヒトリ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'ミバエG') where byochu like '%ミバエ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'ヨトウG') where byochu like '%ヨトウ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'イナゴ・バッタG') where byochu like '%イナゴ%' or byochu like '%バッタ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'ウワバG') where byochu like '%ウワバ%' or byochu like '%シタバ%' or byochu like '%キノカワガ' or byochu like '%ツメクサガ';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'コガネムシ・ブイブイG') where byochu like '%コガネ%' or byochu like '%ドウガネ%' or byochu like 'ハナムグリ' or byochu like '%ブイブイ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'コナガ・スガG') where byochu like '%コナガ%' or byochu like '%スムシ%' ;
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'ミノガ・ミノムシG') where byochu like '%ミノガ%' or byochu like '%ミノムシ%' ;
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'ツトガG') where byochu like '%ツトガ%' or byochu like '%ツトムシ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'メイガG') where byochu like '%メイガ%' or byochu like '%メイチュウ%' or byochu like '%ツヅリガ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'ホソガ・カワモグリG') where byochu like '%ホソガ%' or byochu like '%カワモグリ%'; -- ハマキガより前に実行
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'シンクイガ・シンクイムシG') where byochu like '%シンクイ%'; -- キクイムシより前に実行
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'ハマキガG') where byochu like '%ハマキ%' or byochu like '%サヤムシ%' or byochu like '%カワモグリガ%'; -- ハマキモドキより前に実行
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'マイマイ・カタツムリG') where byochu like '%マイマイ%' or byochu like '%カタツムリ%'; -- マイマイガより前に実行
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'マイマイ・ドクガG') where byochu like '%ドクガ%' or byochu like '%マイマイガ%';
--別名優先処理3
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'カメムシG') where byochu like '%カメムシ%'; -- ナガカメムシより前に実行
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'ゾウムシG') where byochu like '%ゾウムシ%'; -- チョッキリより前に実行
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'テントウムシG') where byochu like '%テントウ%'; -- テントウムシダマシより前に実行
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'ハモグリガG') where byochu like '%ハモグリ%'; -- ハモグリバエより前に実行
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'アブラムシG') where byochu like '%アブラムシ%' or byochu like '%ワタムシ%'; -- ネアブラムシ、タマワタムシより前に実行
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'カイガラムシG') where byochu like '%カイガラムシ%'; -- コナカイガラムシ、ロウカイガラムシより前に実行
--害虫G通常処理
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'アオムシG') where byochu like '%アオムシ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'ジャガイモガ・イモコガG') where byochu like '%イモコガ%' or byochu like '%ジャガイモガ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'ガガンボG') where byochu like '%ガガンボ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'カミキリムシG') where byochu like '%カミキリ%' or byochu like '%マツクイムシ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'ハモグリバエ・キモグリバエ・カラバエ・ミギワバエG') where byochu like '%カラバエ%' or byochu like '%キノコバエ%' or byochu like '%モグリバエ%' or byochu like '%ショウジョウバエ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'キジラミG') where byochu like '%キジラミ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'クスサンG') where byochu like '%クスサン%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'グンバイムシG') where byochu like '%グンバイ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'コオロギ・カネタタキG') where byochu like '%コオロギ%' or byochu like '%カネタタキ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'コナダニG') where byochu like '%コナダニ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'コメツキムシG') where byochu like '%コメツキ%' or byochu like '%ハリガネムシ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'サビダニG') where byochu like '%サビダニ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'スカシバG') where byochu like '%スカシバ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'タネバエ・ハナバエG') where byochu like '%タネバエ%' or byochu like '%ハナバエ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'ヤガG') where byochu like '%タバコガ%' or byochu like '%ネキリムシ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'タマバエG') where byochu like '%タマバエ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'タマバチG') where byochu like '%タマバチ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'タマムシG') where byochu like '%タマムシ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'トビムシG') where byochu like '%トビムシ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'ナメクジG') where byochu like '%ナメクジ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'ヨコバイG') where byochu like '%ヨコバイ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'ハゴロモG') where byochu like '%ハゴロモ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'カキヘタノムシガ・マイコガG') where byochu like '%マイコガ%' or byochu like '%カキヘタノムシガ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'ムギダニG') where byochu like '%ムギダニ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'ロウムシ・ロウカイガラムシG') where byochu like '%ロウムシ%' or '%ロウカイガラムシ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'アザミウマG') where byochu like '%アザミウマ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'カスミカメG') where byochu like '%カスミカメ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'カブトムシG') where byochu like '%カブトムシ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'キクイムシG') where byochu like '%キクイムシ%' or byochu like '%ヒメコシンクイ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'ケシキスイG') where byochu like '%ケシキスイ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'コウモリガG') where byochu like '%コウモリガ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'コナジラミG') where byochu like '%コナジラミ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'ホコリダニG') where byochu like '%ホコリダニ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'シバンムシG') where byochu like '%シバンムシ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'シャチホコガG') where byochu like '%シャチホコ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'センチュウG') where byochu like '%センチュウ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'タネコバチG') where byochu like '%タネコバチ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'ダンゴムシG') where byochu like '%ダンゴムシ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'チョッキリG') where byochu like '%チョッキリ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'ハンミョウG') where byochu like '%ハンミョウ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'ヒラタムシG') where byochu like '%ヒラタムシ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'ヒロズコガG') where byochu like '%ヒロズコガ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'リンゴガイG') where byochu like '%リンゴガイ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'タマワタムシG') where byochu like '%タマワタムシ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'ナガカメムシG') where byochu like '%ナガカメムシ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'ハマキモドキG') where byochu like '%ハマキモドキ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'ネアブラムシG') where byochu like '%ネアブラムシ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'コナカイガラムシG') where byochu like '%コナカイガラムシ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'クロバネキノコバエG') where byochu like '%クロバネキノコバエ%';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'テントウムシダマシG') where byochu like '%テントウムシダマシ%' or byochu like '%ニジュウヤホシテントウ%';
--害虫G例外処理
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'アリG') where byochu = 'アイノキクイムシ';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'カイガラムシG') where byochu = 'キュウコンコナカイガラムシ';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'カスミカメG') where byochu like '%コバネナガガメムシ';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'カメムシG') where byochu = 'ウスモンミドリカスミカメ';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'タネバエ・ハナバエG') where byochu in ('ダイコンバエ', 'タマネギバエ');
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'タマワタムシG') where byochu = 'リンゴワタムシ';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'トビムシG') where byochu = 'クワシロドクガ';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'ネアブラムシG') where byochu = 'クリイガアブラムシ';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'ハマキガG') where byochu in ('イグサシンムシガ', 'クリミガ');
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'ヒラタムシG') where byochu = 'カキミガ';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'マイマイ・ドクガG') where byochu = 'ハラアカマイマイガ';
update m_byochu set gid = (select gid from spec.ggaichu where gname = 'ヤガG') where byochu in ('タバコアオムシ', 'ナシケンモン', 'ベニモンアオリガ', 'ムラサキアシブト');
update m_byochu set gid = (select gid from spec.ggaichu where gname = '複数害虫') where cid = (select cid from spec.cbyochu where cname = '害虫') and byochu like '%、%';
commit;
drop table if exists t_byochu;
投票数:2
平均点:5.00
投稿ツリー
-
ACFinderでの作物名コードの扱いについて (sugak, 2010.10.25 19:14)
-
Re: ACFinderでの作物名コードの扱いについて (kabe, 2010.10.25 20:29)
-
ACFinder 101023test版 (kabe, 2010.10.25 23:53)
-
Re: ACFinderでの作物名コードの扱いについて (OhYeah!, 2010.10.26 02:07)
-
Re: ACFinderでの作物名コードの扱いについて (OhYeah!, 2010.10.26 17:52)
-
Re: ACFinderでの作物名コードの扱いについて (OhYeah!, 2010.10.26 19:15)
-
Re: ACFinderでの作物名コードの扱いについて (OhYeah!, 2010.10.26 23:34)
-
Re: ACFinderでの作物名コードの扱いについて (kabe, 2010.10.27 18:33)
-
Re: ACFinderでの作物名コードの扱いについて (kabe, 2010.10.30 22:28)
-
Re: ACFinderでの作物名コードの扱いについて (OhYeah!, 2010.10.31 00:45)
-
ACFinder 101031test版 (kabe, 2010.10.31 23:37)
-
Re: ACFinder 101031test版 (kabe, 2010.11.01 16:29)
-
Re: ACFinder 101031test版 (OhYeah!, 2010.11.01 18:31)
-
-
-
-
-
-
Re: ACFinderでの作物名コードの扱いについて (OhYeah!, 2010.10.28 11:04)
-
FAMIC からの返信 (OhYeah!, 2010.11.01 08:39)
-
-
-
-
新作物マスター案 (OhYeah!, 2010.11.01 10:44)
-
Re: 新作物マスター案 (kabe, 2010.11.04 23:10)
-
Re: 新作物マスター案 (OhYeah!, 2010.11.05 00:31)
-
-
-
新病害虫マスター案 (OhYeah!, 2010.11.01 11:20)
-
Re: 新病害虫マスター案 (OhYeah!, 2010.11.01 19:20)
-
Re: 新病害虫マスター案 (kabe, 2010.11.01 22:29)
-
Re: 新病害虫マスター案 (OhYeah!, 2010.11.02 00:22)
-
-
Re: 新病害虫マスター案 (OhYeah!, 2010.11.02 02:03)
-
Re: 新病害虫マスター案 (OhYeah!, 2010.11.02 19:54)
-
-
-
分類付き m_byochu (OhYeah!, 2010.11.03 01:25)
-
Re: 分類付き m_byochu (OhYeah!, 2010.11.03 12:04)
-
Re: 分類付き m_byochu (kabe, 2010.11.03 21:20)
-
Re: 分類付き m_byochu (OhYeah!, 2010.11.03 22:01)
-
Re: 分類付き m_byochu (OhYeah!, 2010.11.03 22:45)
-
Re: 分類付き m_byochu (OhYeah!, 2010.11.03 23:59)
-
-
Re: 分類付き m_byochu (OhYeah!, 2010.11.10 00:30)
-
Re: 分類付き m_byochu (OhYeah!, 2010.11.10 09:14)
-
-
-
-
病害虫分類及び害虫グループ付き m_byochu (OhYeah!, 2010.11.03 17:12)
-
Re: 病害虫分類及び害虫グループ付き m_byochu (OhYeah!, 2010.11.03 18:34)
-
Re: 病害虫分類及び害虫グループ付き m_byochu (OhYeah!, 2010.11.04 00:39)
-
Re: 病害虫分類及び害虫グループ付き m_byochu (OhYeah!, 2010.11.04 00:43)
-
Re: 病害虫分類及び害虫グループ付き m_byochu (OhYeah!, 2010.11.08 23:40)
-
-
-
-
-