_SQL SERVER数据库_黑客防线网安服务器维护基地--Powered by WWW.RONGSEN.COM.CN

怎样使用SQL数据库来过滤数据

作者:黑客防线网安SQL维护基地 来源:黑客防线网安SQL维护基地 浏览次数:0

本篇关键词:过滤数据数据库使用

我们知道关系型数据一般以规范化的形式保存也就是说你应该尽可能少地重复数据;在正常情况下,表与表之间仅通过各种键值实现关联进一步地讲,规范化的含义就是:你不能在数据库中保存计算后的值,而你只能在需要的时候临时计算数据库中保存的值

对数据进行某些分析通常是很重要的。比方说,你或许想知道哪些产品的定单最多或者哪些定单的利润最大。这些问题都要求你针对自己的SQL语句创建执行过滤规则的公式。其中最重要的语句之一就是GROUP BY子句。

◆Northwind数据库中的定单

Northwind数据库是包含在SQL Server安装软件中的两个示范数据库。这个数据库虽然谈不上完美无缺但也足够满足我们讨论GROUP BY语句的目的了。原因之一是它工作原理清晰,运行良好,包含了一整套标准的数据表,比如Customers(客户)、Orders(定单)、Order Details(定单细节)和处理定单的Products(产品)。

◆表的结构模式

如果你想查看各个定单的OrderID和ProductID ,以下的SQL命令可以满足要求:

以下为引用的内容:
SELECT o.OrderID, od.ProductID
FROM Orders o, [Order Details] od
WHERE o.OrderID = od.OrderID

这样你就通过OrderID字段把Orders和Order Details连接了起来。给出的结果列表即显示各定货条目的OrderID和ProductID。

你可以从这个列表中找到条目数量最大的定单。可是,再想想,要能简单地要求数据库计算出需要的条目数目不更方便吗?如果你不关心单个条目而只想知道订购条目数量最大的定单,那么你可以采用以下的SQL语句:

以下为引用的内容:
SELECT o.OrderID, Count(od.ProductID) as NumItems
FROM Orders o, [Order Details] od
WHERE o.OrderID = od.OrderID

这样就可以总计出产品的数量并用一个名为NumItems的新字段来显示总数。可是,如果你执行该语句则可能得到以下错误:

以下为引用的内容:
Server: Msg 8118, Level 16, State 1, Line 1


    希望这篇怎样使用SQL数据库来过滤数据的文章能够对您有所帮助,如果您觉得这篇网站维护教程有用的话,别忘了推荐给您的朋友哦!如果您有好的经验方法,不妨拿出来和大家一起分享:假如每个人都拿出一个经验,那么我们都将额外的获取一堆他人的经验。
请记住本站永久域名:(黑客防线网安服务器维护方案维护基地)Www.Rongsen.Com.Cn
    黑客防线网安服务器维护方案本篇连接:http://kj.rongsen.com.cn/show-10162-1.html
网站维护教程更新时间:2012-03-21 02:30:27  【打印此页】  【关闭
0
顶一下
0
踩一下
我要申请本站N点 | 黑客防线官网 |  
专业服务器维护及网站维护手工安全搭建环境,网站安全加固服务。黑客防线网安服务器维护基地招商进行中!QQ:29769479

footer  footer  footer  footer