oracle 語法
上次發的返回生成樹的:
select ob_parentcode_0047,ob_sortcode_0047,ob_sortname_0047 from ctb_text_0047 where ob_isvalid_0047 = '1'
connect by prior ob_sortcode_0047=ob_parentcode_0047 start with ob_parentcode_0047='01' order siblings by ob_sortcode_0047
只能在9i中用,在8i中只能用,ios用的是8i的資料庫:
select ob_parentcode_0047,ob_sortcode_0047,ob_sortname_0047 from ctb_text_0047 where ob_isvalid_0047 = '1'
connect by prior ob_sortcode_0047=ob_parentcode_0047 start with ob_parentcode_0047='01' order by ob_sortcode_0047
將 order siblings by 改為 order by
返回生成好的樹
bcb中顯示樹的**:
///定義乙個結構儲存返回的記錄集。
/*struct sort;
*/treeview1->items->clear();
ttreenode *tnode1;
ttreenode *tnode2;
string s_pcode=""; //臨時儲存父類編碼
string s_code=""; //臨時儲存類別編碼
for(int i=0; i< arr_sort.size(); i++)
if(ansistring(arr_sort[i].psortcode)=="01") //頂級節點父類編碼=01)
else if(s_pcode==string(arr_sort[i].psortcode)) //與上一條記錄是同級(父類**相同)
else if(s_code == string(arr_sort[i].psortcode)) //是上一條記錄的下級(上一條的類別**=本條的父類**)
else //不是上一條記錄是同級/下級
while (strcmp(arr_sort[i].psortcode,(char*)(tnode1->data))); //找到本條的父類**=類目**的那一條記錄,作為那一條的子節點
tnode2=treeview1->items->addchildobject(tnode1,arr_sort[i].sortname,arr_sort[i].sortcode);
tnode1=tnode2;
}s_pcode=string(arr_sort[i].psortcode);
s_code=string(arr_sort[i].sortcode);
}
SQL語句優化之經典總結
不可不優化的where子句 1.例 下列sql條件語句中的列都建有恰當的索引,但執行速度卻非常慢 select from record where substring card no,1,4 5378 13秒 select from record where amount 30 1000 11秒 s...
常用SQL語句優化技巧總結 經典
除了建立索引之外,保持良好的sql語句編寫習慣將會降低sql效能問題發生。通過變數的方式來設定引數 好 stringsql select from people p where p.id 壞 stringsql select from people p where p.id id 資料庫的sql文解...
經典的SQL語句
說明 複製表 只複製結構,源表名 a 新錶名 b b不存在 sql select into b from a where 1 1 說明 拷貝表 拷貝資料,源表名 a 目標表名 b b存在 sql insert into b a,b,c select d,e,f from b sql select a...