1、各种sql语句的详细用法与讲解学习SQL应知道的动态SQL语句基本语法1 、普通SQL语句可以用Exec执行 9K_p=A _CdaF_r1 eg: Select * from tableName Wsc+A:_ 当然将字符串改成变量的形式也可 :?_ _Gf%y_ declare fname varchar(20) _r_j XK3 set fname = FiledName -设置字段名 _!_i_9mD!G _w( IfnsP declare s varchar(1000) _7A _?_m_u set s = select + fname + from tableName ezCY_T
2、9m Exec(s) - 成功 W=Q_!_X_$ exec sp_executesql s - 此句会报错 v_OwT_KUb By4-_T+A 2#sv-v_6oH declare s Nvarchar(1000) - 注意此处改为nvarchar(1000) A_!?U_OE set s = select + fname + from tableName (/H_v6n3Z& Exec(s) - 成功 _ix9 Hh_ exec sp_executesql s - 此句正确 _7UXt_*w _LBf_0at0 3、输出参数 kz/7 E/A _% +_n _p.MM7E declare
3、 num int, _3=CUh sqls nvarchar(4000) cI) 10000 ) AS t WHERE a.au_id=ta.au_id AND ta.title_id=t.title_id此例中,将SELECT返回的结果集合给予一别名t,然后再从中检索数据。 (三) 使用WHERE子句设置查询条件 WHERE子句设置查询条件,过滤掉不需要的数据行。例如下面语句查询年龄大于20的数据: SELECT * FROM usertable WHERE age 20WHERE子句可包括各种条件运算符: 比较运算符(大小比较): 、 =、=、 、 =、 、! 、! =10 AND age
4、 =30 2、列表运算符例:country IN ( Germany , China ) 3、模式匹配符例:常用于模糊查找,它判断列值是否与指定的字符串格式相匹配。可用于char、varchar、text、ntext、datetime和smalldatetime等类型查询。 可使用以下通配字符: 百分号%:可匹配任意类型和长度的字符,如果是中文,请使用两个百分号即%。 下划线_:匹配单个任意字符,它常用来限制表达式的字符长度。 方括号:指定一个字符、字符串或范围,要求所匹配对象为它们中的任一个。:其取值也 相同,但它要求所匹配对象为指定字符以外的任一个字符。 例如: 限制以Publishing结尾,使用LIKE %Publishing 限制以A开头:LIKE A% 限制以A开头外:LIKE A% 4、空值判断符例WHERE age IS NULL 5、逻辑运算符:优先级为NOT、AND、OR (四)查询结果排序 使用ORDER BY子句对查询返回的结果按一列或多列排序。ORDER BY子句的语法格式为: ORDER BY