此範例是在工作上的需求而產生的一點心得,供大家參考看看
因為因應需求的改變所以類目的編碼方式更改,以下列出方式的說明
新類目編碼方式說明
新類目編碼目前訂為10個bit,含類別的話共有4個區段,如下所示:
x xxx xxx xxx
第一個區段代表的是代表的是9大類目,目前有產業別、職務別、科系別、技能別、學校、地區、留學國家、工業區、高階職務別,由1開始,例如“產業別”的類目編號是1000000000。
第二個區段為大類,範圍由001~999。例如產業別下的製造業為1001000000。
第三個區段為中類,範圍由001~999。例如產業別-製造業-食品及飲料製造業為1001001000。
第三個區段為小類,範圍由001~999。例如產業別-製造業-食品及飲料製造業-乳品製造業為1001001002。
由目前類目取得父類目的運算方法為:
1. 先判斷目前編號是大、中、小哪一類。
2. 依類別除以1000、1000000、1000000000。
3. 取整數後再乘以1000、1000000、1000000000便是所屬的父類目。
若要直接取出中類的所有類別
可以使用下列方法來取出
第一種…
select fun_no,fun_descript
from function01tree2006
where
fun_no > 1000000000 and fun_no < 2000000000
count:#count#
第二種…
select fun_no,fun_descript, substr(fun_no,1,7) as sfun_no
from function01tree2006
where
mod(fun_no,1000)=0
and fun_no > 1000000000 and fun_no < 2000000000
order by fun_no asc
基本上公司利用數字來做類目的編排是很好的用法,如果你有這種需求的話,也建議你使用這種方法
且在使用上非常方便,如果能有效利用查詢的語法就可以省很多功夫了(就如第二種方法一樣)
因為因應需求的改變所以類目的編碼方式更改,以下列出方式的說明
新類目編碼方式說明
新類目編碼目前訂為10個bit,含類別的話共有4個區段,如下所示:
x xxx xxx xxx
第一個區段代表的是代表的是9大類目,目前有產業別、職務別、科系別、技能別、學校、地區、留學國家、工業區、高階職務別,由1開始,例如“產業別”的類目編號是1000000000。
第二個區段為大類,範圍由001~999。例如產業別下的製造業為1001000000。
第三個區段為中類,範圍由001~999。例如產業別-製造業-食品及飲料製造業為1001001000。
第三個區段為小類,範圍由001~999。例如產業別-製造業-食品及飲料製造業-乳品製造業為1001001002。
由目前類目取得父類目的運算方法為:
1. 先判斷目前編號是大、中、小哪一類。
2. 依類別除以1000、1000000、1000000000。
3. 取整數後再乘以1000、1000000、1000000000便是所屬的父類目。
若要直接取出中類的所有類別
可以使用下列方法來取出
第一種…
select fun_no,fun_descript
from function01tree2006
where
fun_no > 1000000000 and fun_no < 2000000000
count:#count#
第二種…
select fun_no,fun_descript, substr(fun_no,1,7) as sfun_no
from function01tree2006
where
mod(fun_no,1000)=0
and fun_no > 1000000000 and fun_no < 2000000000
order by fun_no asc
基本上公司利用數字來做類目的編排是很好的用法,如果你有這種需求的話,也建議你使用這種方法
且在使用上非常方便,如果能有效利用查詢的語法就可以省很多功夫了(就如第二種方法一樣)
全站熱搜
留言列表