Google [站内搜索]

分类: Web编程预览模式: 普通 | 列表

数据库查重



如上一张表,有没有办法筛选出book重复的记录并删除呢?虽然SQL的distinct聚合函数可以将查询清单中的重复记录剔除,每种记录值只返回其中的一条记录,但是它不能针对单个字段查重,如果使用"Select distinct book,id,author,price from t1"并非只查询book字段重复,而是作用于所有字段,只有当book,id,author,price几个字段都相同时才被认为是相同的记录。实际中我们通常需要针对一两个字段进行查重,显然用distinct关键字是行不通的。

SQL的Group by子句可以根据数据库每一列的内容对查询结果进行分类,那我们能不能利用这个子句呢?通过构造SQL语句我们可以得到无重复记录的ID,SQL语句如下:Select max(id) from t1 group by book,这边的max函数作用是在重复记录中选择ID值最大的记录,将其改为min亦有相同的效果。现在我们就可以利用嵌套查询来达到我们要的效果,完整SQL语句:Select * from t1 where id in(Select max(id) from t1 group by book),执行查询后视图如下:

查看更多...

分类:Web编程 | 固定链接 | 评论: 1 | 引用: 0 | 查看次数: 5952

对Instr函数的误解

Instr函数的语法为:InStr([start, ]string1, string2[, compare]),其中start用于设置每次搜索的开始位置,如果省略,将从第一个字符的位置开始搜索。当设置了start参数时就必须设置compare参数,compare参数用来指示在计算子字符串时使用的比较类型,0表示执行二进制比较,1表示执行文本比较。

假如有一个字符串"abc/def/gh",那么instr(6,str,"/",1)返回的值应该是多少呢?我一直都以为应该是2,结果却老是8,以至于我怀疑这个函数有问题。其实是我的理解出了问题,Instr返回的是某个字符在字符串中出现的位置,都是从第1位开始算,而不论start参数指示从哪个位置开始搜索,start参数只影响搜索的起始位置,不影响搜索的结果。

查看更多...

分类:Web编程 | 固定链接 | 评论: 1 | 引用: 0 | 查看次数: 4834

参数查询

Command对象在实际开发中用的不是很多,但在利用参数查询方面却是非常有用,它主要是用来提高速度,例如开发一个程序,经常要处理上百万条或更多的记录,这时速度就非常重要了。

1.非参数查询

对于不需要传递参数的查询,我们可以直接将SQL语句在数据库中保存成一个查询供调用即可。例如:将"Select * from students where age >18"保存为名为list1的查询,实际中调用如下:

查看更多...

分类:Web编程 | 固定链接 | 评论: 1 | 引用: 0 | 查看次数: 5090

SQL子查询

一、子查询基础知识

子查询是一个嵌套在 Select、Insert、Update 或 Delete 语句或其他子查询中的查询。任何允许使用表达式的地方都可以使用子查询。在以下示例中,子查询在 Select 语句中被用作名为 MaxUnitPrice 的列表达式。

Select ord.SalesOrderID, ord.OrderDate,

查看更多...

分类:Web编程 | 固定链接 | 评论: 1 | 引用: 0 | 查看次数: 5978

asp操纵xml类

<%
Class cls_xml

private sfilename
private sxmlfile

查看更多...

分类:Web编程 | 固定链接 | 评论: 1 | 引用: 0 | 查看次数: 4569

一个简单的万年历

一、VBScript版

HTML代码


[Ctrl+A 全部选择 提示:你可先修改部分代码,再按运行]

查看更多...

分类:Web编程 | 固定链接 | 评论: 1 | 引用: 0 | 查看次数: 5356

判断某月份总天数

在制作万年历时首先要解决的一个问题是:如何判断某年某月总天数。

1.方法一

由于每月天数的范围为[28,31],所以可以依次从31到28,利用isdate函数判断是否为合法日期,首次true则该值就为当月天数;当然也可以依次从28到31,同样利用isdate判断是否为合法日期,首次false则该值减1就为当月天数,实现函数分别为:

查看更多...

分类:Web编程 | 固定链接 | 评论: 1 | 引用: 0 | 查看次数: 7485

提高页面显示速度的秘技

在安排Web页面的布局时,最常用的方法之一是用HTML表格界定页面的结构。例如,假设Web页面由顶端的导航条和它下面的两栏(列)构成——左边的列是一个导航条,右边的列是实际安置内容的区域。对于这样一个页面,我们可以用一个两行、两列的大表格进行布局:在第一行中,合并两个列然后放上顶端导航表格;在第二个行中,左边的列放上一个显示导航按钮的表格,右边的列再用一个表格显示页面的实际内容。用这种表格嵌套表格的方法进行布局可以得到非常好的效果。

  要制作出这种页面,我们可以使用如下HTML代码:

<TABLE BORDER="0">

查看更多...

分类:Web编程 | 固定链接 | 评论: 0 | 引用: 0 | 查看次数: 4163

IIS5中的两种服务器端网页重定向方法

在IIS5中提供了两种服务器端网页重定向(或者说转向)的方法,一个是Server.Transfer方法, 另外一个是Server.Execute方法。说它们是服务器端重定向,是因为在不同页面之间的转向是直接在服务器端完成的, 客户端只能看到结果,而不能看到转向的过程。 这同以往我们在IIS4使用的Response.Redirect 方法是不同的。

以前, 当我们需要从一个页面转向到另外一个页面的时候,我们一般都会使用Response对象的Redirect方法, 比如, 在我们的某个需要用户验证的页面,当用户没有登陆的时候, 就转到用户登陆页面,简单的例子

<%

查看更多...

分类:Web编程 | 固定链接 | 评论: 1 | 引用: 0 | 查看次数: 3955

Server.Transfer 和Response.Redirect 比较

作者:卡尔·穆尔
原著:Developer.com
翻译:陈梦

如果你读过很多行业杂志和 ASP.NET 示例,你会发现,大多数人使用 Response.Redirect 将用户引导到另一个页面,而另一些人好像偏爱于神秘的 Server.Transfer,那么,这二者有什么区别?

查看更多...

分类:Web编程 | 固定链接 | 评论: 1 | 引用: 0 | 查看次数: 4077