萌萌妈妈 发表于 2015-1-16 22:15:37

MSSQL网页设计SQL实例代码:取栏目树,过滤用户权限和无...

mysql的原来开发者又开发了MariaDB,MariaDB适合用来替代mysql吗</p>文由网友whl供稿,特此感激!
/**
*Desc:取栏目树,过滤用户权限和有效栏目
*Author:WHL
*Date:2009-05-3115:17
*/


/**1.取某用户有权限(np_cms_column_security表有纪录且t.action_1=‘1&prime;)的栏目标树**/01.createorreplaceviewV_NP_CTREE_BSas02.selectB.*from(03.selectA.*,lag(A.column_id)over(partitionbyA.column_idorderby0)RK04.from(select/*+choose*/05.t.*06.fromnp_cms_columnt07.wheret.is_active=108.connectbypriort.column_id=t.parent_id09.startwitht.column_idin(selectt.column_id10.fromnp_cms_column_securityt11.wheret.subject_id=mazj12./*这里增加脚色过滤*/13.andt.action_1=1))A)B14.wherenotexists15.(select016.from(selectdistinctd.column_id17.fromnp_cms_columnd18.connectbypriord.column_id=d.parent_id19.startwithd.column_idin20.(selectt.column_id21.fromnp_cms_column_securityt22.wheret.subject_id=mazj23./*这里增加脚色过滤*/24.andt.action_1=025./*扫除有权限树下的非受权ID,既Action_1=0的*/26.andexists27.(select028.from(selectdistinctd.column_id29.fromnp_cms_columnd30.connectbypriord.column_id=31.d.parent_id32.startwithd.column_idin33.(selectt.column_id34.fromnp_cms_column_securityt35.wheret.subject_id=36.mazj37./*这里增加脚色过滤*/38.andt.action_1=1))C139.whereC1.column_id=t.column_id))40.andd.is_active=1)C41.whereC.column_id=B.column_idandB.RKisnull)andB.RKisnull42.unionall43.selectc.*,0RKfromnp_cms_columncwherec.parent_id=0;————————————————————————
/**2.失掉栏目标假造父亲ID(思索到把断层的节点接起来)**/
01.createorreplaceviewV_NP_CTREE_PAas02.selectB.*,03.(caseB.column_id04.when1then0elsenvl(B.father,1)end)VFA05.from(selectv.*,06.(selectvv.column_id07.fromV_NP_CTREE_BSvv08.wherevv.column_id=v.parent_id)FATHER09.fromV_NP_CTREE_BSv)B;————————————————————————
/**3.掏出流派必要的栏目树**/
1.--createorreplaceviewV_NP_CTREE_RSas2.select3.D.*,LPAD(,2*level-1)SYS_CONNECT_BY_PATH(D.COLUMN_NAME,/)"Path"4.from(selectc.*5.fromV_NP_CTREE_PAc6.orderbyc.VFA,c.disorderdesc,c.column_iddesc)D7.connectbypriorD.column_id=D.VFA8.startwithD.column_id=1;目前的方案是用mysqlbinlog工具,增加一个flashback参数,输出结果为一个新的binlog文件――姑且叫做flashbacklog,这个flashbacklog顺序执行,可制定某张表和执行到哪个pos,来实现数据库的闪回。

admin 发表于 2015-1-19 06:18:17

大家注意一点。如下面的例子:

简单生活 发表于 2015-1-26 19:33:13

每天坚持做不一样的是,认真做笔录,定时复习。一个月你就可以有一定的收获。当然如果你想在sql方面有一定的造诣,你少不了需要看很多很多的书籍了。

飘灵儿 发表于 2015-2-4 20:47:11

XML字段类型更好的解决了XML数据的操作。XQuery确实不错,但是个人对其没好感。(CSDN的开发者应该是相当的熟了!)

只想知道 发表于 2015-2-10 09:01:26

是要和操作系统进行Socket通讯的场景。否则建议慎重!

萌萌妈妈 发表于 2015-3-1 07:44:36

where子句的作用是在对查询结果进行分组前,将不符合where条件的行去掉,即在分组之前过滤数据,条件中不能包含聚组函数,使用where条件显示特定的行。

莫相离 发表于 2015-3-10 13:10:55

这是一个不错的新特性。虽然索引的附加字段没有索引键值效率高,但是相对映射到数据表中效率还是提高了很多。我做过试验,在我的实验环境中会比映射到表中提高30%左右的效率。

愤怒的大鸟 发表于 2015-3-17 08:10:27

索引视图2k就有。但是2005对其效率作了一些改进但是schema.viewname的作用域真是太限制了它的应用面。还有一大堆的环境参数和种种限制都让人对它有点却步。

再见西城 发表于 2015-3-24 03:55:06

呵呵,这就是偶想说的
页: [1]
查看完整版本: MSSQL网页设计SQL实例代码:取栏目树,过滤用户权限和无...