Mysql入门系列:在MYSQL结果集上执行计算
2006-12-31 10:51:14 来源:WEB开发网6.8 其他主题
本节包括几个主题,这些主题不完全适合于本章从client1到client5 的开发中的任一小节的内容:
■ 在使用结果集元数据帮助验证这些数据适合于计算之后,使用结果集数据计算结果。
■ 如何处理很难插入到查询中的数据。
■ 如何处理图形数据。
■ 如何获得表结构的信息。
■ 常见的MySQL程序设计错误及如何避免。
6.8.1在结果集上执行计算
迄今为止,我们集中而主要地使用了结果集元数据来打印行数据,但很明显,除打印之外,还有需要使用数据做其他事情的时候。例如,计算基于数据值的统计信息,应用元数据确保数据适合它们要满足的需求。哪种类型的需求?对于启动程序来说,可能要校验一下正
要执行数字计算的列实际上是否包含着数字!
下面的列表显示了一个简单函数summary _ stats ( ) ,它获取结果集和列索引,并产生列值的汇总统计。该函数还列出缺少数值的数量,它是通过检查NULL 来检测的。这些计算包括两个数据所必须满足的需求, summary_stats() 用结果集元数据来校验:
■ 指定的列必须存在(也就是说,列索引必须在结果集列值的范围内)。
■ 此列必须包括数字值。
如果这些条件不满足,则summary_stats() 只打印出错误消息并返回。代码如下:
请注意在mysql_fetch_row() 循环前面调用的mysql_ data _ seek( )。为获得同样的结果集,它允许多次调用summary _ stats()(假设要计算几列的统计值的话)。每次调用summary _ stats( )都要“重新回到”到结果集的开始(这里假设mysql_store_result() 创建结果集,如果用mysql_use_result() 创建结果集就只能按顺序处理行,而且只能处理一次)。summary_stats() 是个相对简单的函数,但它给我们一个提示,就是如何编写一个比较复杂的计算程序,如两个列的最小二乘回归或者标准统计,如t -检验。
更多精彩
赞助商链接