欢迎光临
我们一直在努力

SQLServer常见问题应对-数据库专栏,SQL Server

建站超值云服务器,限时71元/月

sqlserver常见问题应对

版权所有©ashuixu转载请保持完整并注明出处

sql语句部分

1、sql语句跨两个以上的数据库

问题:有时某个sql语句需要使用两个以上的数据库,这样的sql语句怎么写呢?

解答:采用databasename..tablename来访问表就可以了。

举例:

2、匹配查询

问题:我要实现字符串的匹配查询,该怎么做呢?

解答:用like,请参见sqlserver2000的联机帮助。在索引中输入“like”,内有非常详细的说明和示例。

补充:该问题的提出是因为笔者在查询所有面料包含文字“50%纯棉”的时候引出的,因为它包含一个或多个特殊通配符“%”。当笔者写出如下语句时:

   
执行结果为(非真实数据): 

正确的写法是:

或:

3、交叉数据报表

问题:如何获取交叉数据查询结果?

解答:更为详细的内容请参见sqlserver2000联机帮助。在索引中输入“交叉数据报表”,即可查看。

补充:在程序中可以先用distinct或group选出满足条件的所有交叉数据列,然后构造出交叉数据查询语句;如果想一个写存储过程用于返回数据结果集,可以使用游标、生成查询字符串,然后用系统存储过程sp_executesql执行该字符串。 

4、都是尾部空格惹的祸

问题:在用like查询数据时,感觉自己写的sql语句没有问题,就是得不到想要的数据,怎么回事呢?

解答:

a.由于数据存储方式的原因,使用包含 char(固定长度) 和 varchar(可变长度) 数据模式的字符串比较可能无法通过 like 比较。了解每种数据类型的存储方式以及导致 like 比较失败的原因十分重要。

b.当对 unicode 数据(nchar 或 nvarchar 数据类型)使用 like 时,尾随空格是有意义的。但是对于非 unicode 数据,尾随空格没有意义。

补充:请读者自己在下面做一些试验,亲身感受一下其中的区别。 

(未完待续……)

赞(0)
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 » SQLServer常见问题应对-数据库专栏,SQL Server
分享到: 更多 (0)

相关推荐

  • 暂无文章