ASP数据库编程SQL常用技巧

编程|技巧|数据|数据库|技巧

一.怎样删除一个表中某个字段重复的列呀,举个例子

  表[table1]

id name1 aa2 bb3 cc1 aa2 bb3 cc
  我想最后的表是这样的

id name 1 aa2 bb3 cc

  回答:

  将记录存到临时表#t中,重复的记录只存一条,然后将临时表#t中的记录再存回原表中,注意“select distinct id,class,name”要包含你需要的所有字段,否则有些字段就被删掉了。

  在查询管理器里执行下面代码:

SELECT DISTINCT id,, name
INTO #t
FROM table1 DELETE table1
INSERT
INTO table1
SELECT *
FROM #t
  二.找出既会VB又会PHP的人

  表是这样的:

ID 员工 技能1 1 VB2 1 PHP3 1 ASP4 2 PHP5 3 ASP6 4 VB7 4 ASP
  要从这张表中找出既会VB又会PHP的人,SQL该怎么写啊?

  回答:

SELECT 员工 FROM [Table] WHERE 员工 IN(SELECT 员工 FROM [Table] WHERE 技能='VB' ) AND 技能='PHP'三.数据库合并问题

  access里的两个表,想让两个表的内容合并

  表[a]结构如下:

[id] 编号 自动编号[name] 名称 文本[price] 价格 数字[guige] 规格 文本[changjia] 生产厂家 文本[baozhuang] 包装 文本[danwei] 单位 文本
  共有900条记录,除了id和name字段,其他均可以为空

  表[b]结构如下:

[id] 编号 自动编号[name] 名称 文本[price] 价格 数字[changjia] 生产厂家 文本[danwei] 单位 文本[xingzhi] 性质 文本
  共有800条记录,除了id和name字段,比表[a]少几个字段,但还多一个[xingzhi]的字符安其它均可以为空

  现在想生成一个新表[c],结构如下,而且内容是两个表的内容之和。

[id] 编号 自动编号[name] 名称 文本[price] 价格 数字[guige] 规格 文本[changjia] 生产厂家 文本[baozhuang] 包装 文本[danwei] 单位 文本[xingzhi] 性质 文本
  用sql语句也可以,手工操作也好,xml也好,别管怎么着吧,怎么实现呀,哥们要郁闷坏了,真要让我们再输入800条记录,我就挂了。

  回答:

  1.这样

insert into c(id,name,.....)
select id,name,.....
from a
insert into c(id,name,.....)
select max(id)+1,name,.....
from b
  2.更正:

  如果直接在查询分析器里执行:

insert into c(name,.....)
select name,.....
from a
insert into c(name,.....)
select name,.....
from b
  3.用union方法

insert into [c] ([id] ,编号,自动编号)
select [id],编号,自动编号 from [a]
union
select [id],编号,自动编号 from [b]
  4.asp的解决办法

<% '循环检测a表
Set rs = Server.CreateObect("ADODB.RECORDSET")
rs.open "select * from a order by id",conn,1,1
Do while not rs.eof
Call actAdd(rs("name")) '调用像b表添加内容的函数!
rs.MoveNext
Loop
rs.Close
Set rs = Nothing

Sub actAdd(txt)
Dim ts, sql
sql = "insert into b(name) values('"& txt &"')"
Set ts = Conn.Execute(sql)
ts.Close
Set ts = Nothing
end Sub
%>
  5.asp的解决办法

<%
dim arr_temp1,arr_temp2,arr_data
set rs=conn.execute("select id,name,price,guige,changjia,baozhuang,danwei from a")
arr_temp1=rs.getrows
rs.close
set rs=nothing

set rs=conn.execute("select id,name,price,guige,changjia,danwei,xingzhi from b")
arr_temp2=rs.getrows
rs.close
set rs=nothing

rem 开始处理
redim arr_data(ubound(arr_temp1,2)+ubound(arr_temp2,2),7)
rem 把两个数组的内容复制进来
这一部分自己写了做两个循环
然后再存进数据库
%>最后转一些经典的SQL语句:

  1.蛙蛙推荐:一些精妙的SQL语句

  说明:复制表(只复制结构,源表名:a 新表名:b)

SQL: select * into b from a where 1<>1
  说明:拷贝表(拷贝数据,源表名:a 目标表名:b)

SQL: insert into b(a, b, c) select d,e,f from b;
  说明:显示文章、提交人和最后回复时间

SQL: select a.title,a.username,b.adddate from table a,(select max(adddate) adddate from table where table.title=a.title) b
  说明:外连接查询(表名1:a 表名2:b)

SQL: select a.a, a.b, a.c, b.c, b.d, b.f from a LEFT OUT JOIN b ON a.a = b.c
  说明:日程安排提前五分钟提醒

SQL: select * from 日程安排 where datediff('minute',f开始时间,getdate())>5
  说明:两张关联表,删除主表中已经在副表中没有的信息

  SQL:

delete from info where not exists ( sele

时间: 2024-10-27 13:17:38

ASP数据库编程SQL常用技巧的相关文章

ASP数据库编程SQL常用技巧_MsSql

一.怎样删除一个表中某个字段重复的列呀,举个例子 表[table1] id  name  1  aa  2  bb  3  cc  1  aa  2  bb  3  cc  我想最后的表是这样的 id  name   1  aa  2  bb  3  cc  回答: 将记录存到临时表#t中,重复的记录只存一条,然后将临时表#t中的记录再存回原表中,注意"select distinct id,class,name"要包含你需要的所有字段,否则有些字段就被删掉了. 在查询管理器里执行下面代

ASP数据库服务器SQL Server

server|服务器|数据|数据库|服务器 微软的SQL Server是一个关系数据库,它是一项完美的客户/服务器系统.SQL Server需要安装在Windows NT的平台上,而Windows NT可以支持Intel 386,Power PC,MIPS,Alpha PC和RISC等平台,它使SQL Server具备足够的威力和功能. 这里所有的文章所采用的数据库应用程序都是基于SQL Server之上的,采用ODBC及标准的SQL查询,可以非常简单的移植到任何一个支持ODBC的数据库之上,如

数据库ms SQL常用语句

  数据库ms SQL常用语句 truncate table test --删除表中的所有数据 alter table test alter column bb varchar(10) --修改表中字段的定义 alter table aa add constraint fk foreign key([aa]) references bb([aa]) --外键约束 alter table bb add constraint pr primary key(aa) --主键 exec sp_addty

ASP.NET编程十大技巧

asp.net|编程|技巧 在本篇文件中,我们将讨论编程人员在使用ASP.NET开发应用程序时需要注意的10个技巧,这些技巧涉及从缺省的控件.表单名的改变到StringBuilder类的使用,有助于编程人员能够尽快地适应.NET环境.  1.在使用Visual Studio .NET时,除直接或非引用的对象外,不要使用缺省的名字.  .NET带来的好处之一是所有的源代码和配置文件都是纯文本文件,能够使用Notepad或WordPad等任意的文本编辑器进行编辑.如果不愿意,我们并非一定要使用Vis

学习ASP:SQL常用技巧

sql|技巧 一.怎样删除一个表中某个字段重复的列呀,举个例子 表[table1] id name 1 aa 2 bb 3 cc 1 aa 2 bb 3 cc 我想最后的表是这样的 id name 1 aa 2 bb 3 cc 回答: 将记录存到临时表#t中,重复的记录只存一条,然后将临时表#t中的记录再存回原表中,注意"select distinct id,class,name"要包含你需要的所有字段,否则有些字段就被删掉了. 在查询管理器里执行下面代码: SELECT DISTIN

Java数据库编程中的技巧_JSP编程

1.java数据库操作基本流程 2.几个常用的重要技巧: 可滚动.更新的记录集 批量更新 事务处理 java数据库操作基本流程:取得数据库连接 - 执行sql语句 - 处理执行结果 - 释放数据库连接 1.取得数据库连接 1)用DriverManager取数据库连接 例子: String className,url,uid,pwd; className = "oracle.jdbc.driver.OracleDriver"; url = "jdbc:oracle:thin:@

Java数据库编程中的技巧

1.java数据库操作基本流程 2.几个常用的重要技巧: 可滚动.更新的记录集 批量更新 事务处理 java数据库操作基本流程:取得数据库连接 - 执行sql语句 - 处理执行结果 - 释放数据库连接 1.取得数据库连接 1)用DriverManager取数据库连接 例子: String className,url,uid,pwd; className = "oracle.jdbc.driver.OracleDriver"; url = "jdbc:oracle:thin:@

sql 常用技巧整理

--语 句 功 能 --数据操作 SELECT --从数据库表中检索数据行和列 INSERT --向数据库表添加新数据行 DELETE --从数据库表中删除数据行 UPDATE --更新数据库表中的数据 --数据定义 CREATE TABLE --创建一个数据库表 DROP TABLE --从数据库中删除表 ALTER TABLE --修改数据库表结构 CREATE VIEW --创建一个视图 DROP VIEW --从数据库中删除视图 CREATE INDEX --为数据库表创建一个索引 DR

数据库ms SQL常用语句二

-------------转换函数--------------------------------------------------------- print cast(123 as varchar(20))+'abc' print convert(varchar(20),123)+'abc' print str(123)+'abc' 语法 使用 CAST: CAST ( expression AS data_type ) 使用 CONVERT: CONVERT (data_type[(len