分享
 
 
 

静态 SQL语句中的“动态”功能

王朝mssql·作者佚名  2008-05-31
窄屏简体版  字體: |||超大  

我们一般所说的静态SQL语句,是指每次调用时,语句是固定的(语句中变量的取值可能会不同);而动态SQL语句,每次调用时,则根据调用者的需要来临时拼出,这样语句就是不固定的。但是我们可以把静态SQL语句写的复杂一点,以达到一点点的“动态”的功能。

所谓静态SQL语句中的“动态”功能,实际上是在每次调用静态SQL语句时,通过为控制变量赋于不同的值,来使每静态SQL语句有一定的“选择”功能。

一般地讲,在 SELECT 语句的 SELECT 部分实现选择功能,可以用DECODE函数。

如:

SELECT DECODE(字段1,'A',字段A, 'B',字段B, 'C',字段C, 字段D) FROM 表名;

这样就可以根据每条记录的字段1的值来选择其它字段的值。当然这里要注重:字段A,B,C,D的类型要一致或可自动转换。

还可以在WHERE部分实现选择功能。

如:

SELECT …… FROM 表名

WHERE (其它必需的条件)

AND (C_V !='0' OR 可选条件1)

AND (C_V !='1' OR 可选条件2)

AND (C_V !='3' OR 可选条件3)

……

说明:

1。上面语句的含义为:当控制变量C_V为0时,按 可选条件1 来选择;当控制变量C_V为1时,按 可选条件2 来选择……

2。要注重,控制变量的名字不要与表中的原有字段名相同。

3。上面的这段程序可以写在 PROCEDURE 或 FUNCTION 中,控制变量可以作为过程或函数的输入参数。

4。省略号表示类似上面三行的语句可以写多次。

5。上面所述的 WHERE 部分中条件的选择,可以用在任何语句的WHERE部分中。

我想,以上的语句,也可以称做“伪动态SQL”吧!:)

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有