Re: 別表1表示テスト版(exeのみ)

このトピックの投稿一覧へ

なし Re: 別表1表示テスト版(exeのみ)

msg# 1.1.1.2
depth:
3
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2015.08.25 00:07 | 最終変更
OhYeah!  管理人   投稿数: 983 オンライン
新しい sakumotsu テーブルの仕様が固まりました。下記のような内容のテーブルになるように sakumotsu.txt 生成スクリプトを書き直します。
別表1にあって、現行 sakumotsu テーブルにない作物は、上位分類の別名として扱います。作物名検索タブで「根セルリ」を検索すると、「野菜類」が表示されることになります。

--/d
drop table if exists sakumotsu2;
create temp table sakumotsu2 as select level, idsaku, shukakubui, sakumotsu, beppyo1.betsumei as betsumei, ifnullstr(beppyo1.ruby, sakumotsu.betsumei) as ruby from sakumotsu left join beppyo1 using(sakumotsu);
begin transaction;
update sakumotsu2 set shukakubui = (select shukakubui from beppyo1 where sakumotsu = re_replace('[\(\[].+[\)\]]', sakumotsu2.sakumotsu, '')) where shukakubui is null and sakumotsu not regexp '苗木|幼木|親株|は種';
update sakumotsu2 set shukakubui = (select shukakubui from beppyo1 where sakumotsu = '稲') where shukakubui is null and sakumotsu regexp '(移植|直播)水稲';
update sakumotsu2 set shukakubui = (select shukakubui from beppyo1 where sakumotsu = 'ねぎ') where shukakubui is null and sakumotsu regexp '(深|葉)ねぎ|ねぎ類$';
update sakumotsu2 set shukakubui = (select shukakubui from beppyo1 where betsumei like '%'||re_replace('[\(\[].+[\)\]]', sakumotsu2.sakumotsu, '')||'%') where shukakubui is null;
drop table if exists unreg;
create temp table unreg as select ifnullstr(sg, mg) as gr, concat('、', sakumotsu) as sakumotsu, concat('、', betsumei) as betsumei, concat('、', ruby) as ruby from beppyo1 where not exists (select sakumotsu from sakumotsu2 where beppyo1.sakumotsu = sakumotsu2.sakumotsu) group by sg, mg;
update sakumotsu2 set betsumei = concat('、', betsumei, (select sakumotsu from unreg where gr = sakumotsu2.sakumotsu), (select betsumei from unreg where gr = sakumotsu2.sakumotsu)), ruby = concat('、', ruby, (select ruby from unreg where gr = sakumotsu2.sakumotsu)) where sakumotsu in (select gr from unreg);
drop table unreg;
commit;
select * from sakumotsu2;


>kabe さん
作物名検索タブの検索結果には、shukakubui フィールドの内容も表示するようにしてください。これで、「セルリ」で検索した時に収穫部位が「茎葉」の「セルリー」と収穫部位が「果実、茎葉、根、花(食用)等」の「野菜類」が表示されることになり、「根セルリ」には「野菜類」の農薬しか使えないと判断できるようになります。
下位互換性を確保して新 sakumotsu テーブルへ円滑に移行するには、別名とルビは別フィールドではなく、従来通り betsumei フィールドに統合しておいたほうが無難ですかね?
投票数:0 平均点:0.00

投稿ツリー

  条件検索へ