KesionCMS 帮助
帮助首页 模板标签管理 - 问题汇总

4、SQL系统函数标签新手必看

0 2009/8/4 15:57:58

1.SQL_调用推荐的第一条()

条件:至少有一篇文章设置了推荐
语句:select top 1 ID,Tid,Title from KS_Article where Recommend = 1 order by ID desc
调用:{SQL_调用推荐的第一条()}
PS : 太简单

2.SQL_调用推荐2到10 () ----------------------PS:为什么要从2开始呢,有些人就有些BT的需求,比如我,后面还会有任意条到任意条....

条件:有10条以上被设置推荐
语句:select top 9 ID,Tid,Title,Adddate from KS_Article where ID not in (select top 1 ID from KS_Article where Recommend = 1 order by ID desc ) order by Recommend desc
调用:{SQL_调用推荐2到10()}

3.SQL_站点头条()

条件:至少有一篇被设置了头条
语句:select top 1 ID,Tid,Title,Adddate from KS_Article where Strip = 1 order by Adddate desc
调用:{SQL_站点头条()}

4.SQL_调用某栏目TOP10(Param(0))

条件:栏目里有文章---------------------PS:废话
语句:select top 10 ID,Tid,Title,Adddate,Hits,Intro,Picurl from KS_Article where Tid = '{$Param(0)}' order by ID desc
参数:Param(0)=栏目ID -----------------PS:别告诉我你不知道
调用:如:{SQL_调用某栏目TOP10(200710254)}

5.SQL_某栏目前N条(Param(0),Param(1))

条件:算了不说了,我怕板砖....
语句:select top {$Param(0)} ID,Tid,Title,Adddate from KS_Article where Tid= '{$Param(1)}' order by Adddate desc
参数:Param(0)=要几条,必须是数字,Param(1)=栏目ID如:200710258 类似(在新建SQL第二页下面)
调用:如: {SQL_某栏目前N条(10,200701255)}
------------------------以下是个人BT需求,不看也罢---------------------------------------
6.配合第五条使用,比如把前10条分成3条和7条,拼起来刚好10条,有时候为了做不同的样式,比如上下宽度不一样,颜色不同等(说多了)
SQL_某栏目前N1到N2条(Param(0),Param(1),Param(2))
语句:select top {$Param(0)} ID,Tid,Title,Adddate from KS_Article where Tid = '{$Param(2)}' and ID not in (select top {$Param(1)} ID from KS_Article where Tid = '{$Param(2)}' order by Adddate desc ) order by Adddate desc
参数:这条语句的参数,请看仔细,否则效果不一定对
N1 到 N2 条
Param(0) = N2 - N1 + 1
Param(1) = N1 - 1
Param(2) = 栏目ID

如: 2到10条
{SQL_某栏目前N1到N2条(9,1,2007102545)}

7.这个适合放在首页显示,显示的时候把栏目名称和文章标题放在一起,很酷的! ,一般我们都是掉用某个栏目,比如某栏目TOP10 ,而这个调出来的10条是你每个栏目各一条 ,解释很费劲,用了就知道了

SQL_每个栏目第一条()
语句:select ID,Tid,Title,Adddate from KS_Article where ID in (select max(ID) from KS_Article group by Tid)
要求:每个栏有文章~~~~
参数:没有,因为栏目数量不是很多,数量在LOOP里灵活控制

感谢donelle提供

100%