eclipse导出class文件新建class时如何默认勾选publit static void main

如何用SQL修改和删除表中的数据_SQL语句学习
合作共赢、快速高效、优质的网站建设提供商
深圳网站建设 服务热线:6
如何用SQL修改和删除表中的数据
使用SQL删除表中的数据&& 删除数据即把数据表中满足特定条件的某条记录删除,用SQL中的delete语句来完成,用where语句选择满足特定条件的记录,基本语法如下所示&& delete from tableName [where...]&& 其中括号里面就输入要删除字段要满足的条件,比如我们要把001号用户的记录删除,正确地写法如下:&& delete from user where userId="001"使用SQL更新表中的数据&& 更新数据是指修改表中已经存在的一条或者多条数据记录,使用update语句完成更改,使用where语句筛选满足特定条件的记录,语法如下.&& update tableName set column_1=value_1,column_2=value_2...[where...]&& 下面我们举例将用户表中的001号的所在公司名称改一下:&& update user set company="深圳市迅美科技有限公司" where userId="001"&& & 大家在学习SQL的时候觉得自己英文不好,可能没办法学会,虽然在所有的SQL语句中都是用英文来完成的,但是都是特定的几个词汇,只要大家勤加练习,是很容易把这几个词汇攻克的,最后希望大家再接再厉学好JSP语言的网站开发.SQL 数据库--添加删除字段的方法
SQL 数据库--添加删除字段的方法
23:20:00来源:
?添加删除字段的方法:select * from xsbalter table xsb /*为xsb添加bz字段的方法*/?add bz1&varchar(20) null
/*在设计表中添加一列,列名为bz1;数据类型为varchar ;长度为20;*/?alter table xsb /*为xsb删除bz1字段的方法*/?drop?&?column bz1??相关资料:数据库SQL语言的修改语句,可以用来修改基本表,其一般表示格式为:& alter table &表名&& [add&新列名&&数据类型&[完整性约束]]& [drop&完整性约束&]& [alter]&列名&&数据类型&]由上可以看出,修改基本表提供如下三种修改方式:?& (1)add方式:用于增加新列和完整性约束,列的定义方式同creare table语句中的列定义方式相同,其语法格式: & alter table &表名& ADD &列定义&|&完整性约束&。由于使用此方式中增加的新列自动填充NULL值,所以不能为增加的新列指定NOT NULL约束。& (2)drop方式:用于删除指定的完整性约束条件,或删指定的列,其语法格式为:& alter table &表名& drop [&完整性约束名&]alter table &表名& drop column &列名&?& 注释:某些数据库系统不允许这种在数据库表中删除列的方式 (drop column &列名&)。& (3) alter方式,用于修改某些列,其语法格式:& alter table [表名] alter column &列名&&数据类型&by:Lee╰★╮千里之行 始于足下精诚所至 金石为开
欢迎加入我们,一同切磋技术。 &
用户名: &&&
密 码: &
共有 12370 人关注过本帖
标题:在一张表中怎样去掉某个字段得重复的数据?
等 级:ID已被封
帖 子:50
结帖率:100%
&&问题点数:0&&回复次数:10&&&
在一张表中怎样去掉某个字段得重复的数据?
如题,,假如我的数据库里有一张表存的数据量很大,但是有很多是某一个字段数据重复的,怎样去掉这重复数据呢?
K&&&&&& KK&&&&&&&&&KKK&&&&&&KKKKK
12&&&&&& 221&&&&&& 444&&&&&&&&66565
54&&&&&&6565&&&&&& 4896&&&&&& 655+
36&&&&&& 66&&&&&&&&488&&&&&& 5464&&&&&&&&&&&&
98&&&&&&&&546+&&&&&444&&&&&&&&+95+5
上表中,在KKK列里是重复的,有两行数据,怎样可以把其中的一条去掉呢?只保留一条..变成如下表:
K&&&&&& KK&&&&&&&&&KKK&&&&&&KKKKK
54&&&&&&6565&&&&&& 4896&&&&&& 655+
36&&&&&& 66&&&&&&&&488&&&&&& 5464&&&&&&&&&&&&
98&&&&&&&&546+&&&&&444&&&&&&&&+95+5
假如表的数据量很大,但KKK列不可以有重复,,有重复的任意保留一条即可,请问各位这样的SQL语句怎样写呢?
搜索更多相关主题的帖子:
来 自:广东-广州
等 级:版主
威 望:66
帖 子:6039
--按某一字段分组取最大(小)值所在行的数据
(爱新觉罗.毓华 于浙江杭州)
数据如下:
name val memo
a&&& 2&&&a2(a的第二个值)
a&&& 1&&&a1--a的第一个值
a&&& 3&&&a3:a的第三个值
b&&& 1&&&b1--b的第一个值
b&&& 3&&&b3:b的第三个值
b&&& 2&&&b2b2b2b2
b&&& 4&&&b4b4
b&&& 5&&&b5b5b5b5b5
--创建表并插入数据:
create table tb(name varchar(10),val int,memo varchar(20))
insert into tb values('a',&&& 2,&&&'a2(a的第二个值)')
insert into tb values('a',&&& 1,&&&'a1--a的第一个值')
insert into tb values('a',&&& 3,&&&'a3:a的第三个值')
insert into tb values('b',&&& 1,&&&'b1--b的第一个值')
insert into tb values('b',&&& 3,&&&'b3:b的第三个值')
insert into tb values('b',&&& 2,&&&'b2b2b2b2')
insert into tb values('b',&&& 4,&&&'b4b4')
insert into tb values('b',&&& 5,&&&'b5b5b5b5b5')
--一、按name分组取val最大的值所在行的数据。
select a.* from tb a where val = (select max(val) from tb where name = a.name) order by a.name
select a.* from tb a where not exists(select 1 from tb where name = a.name and val & a.val)
select a.* from tb a,(select name,max(val) val from tb group by name) b where a.name = b.name and a.val = b.val order by a.name
select a.* from tb a inner join (select name , max(val) val from tb group by name) b on a.name = b.name and a.val = b.val order by a.name
select a.* from tb a where 1 & (select count(*) from tb where name = a.name and val & a.val ) order by a.name
name&&&&&& val&&&&&&&&&memo&&&&&&&&&&&&&&&&&
---------- ----------- --------------------
a&&&&&&&&& 3&&&&&&&&&&&a3:a的第三个值
b&&&&&&&&& 5&&&&&&&&&&&b5b5b5b5b5
--二、按name分组取val最小的值所在行的数据。
select a.* from tb a where val = (select min(val) from tb where name = a.name) order by a.name
select a.* from tb a where not exists(select 1 from tb where name = a.name and val & a.val)
select a.* from tb a,(select name,min(val) val from tb group by name) b where a.name = b.name and a.val = b.val order by a.name
select a.* from tb a inner join (select name , min(val) val from tb group by name) b on a.name = b.name and a.val = b.val order by a.name
select a.* from tb a where 1 & (select count(*) from tb where name = a.name and val & a.val) order by a.name
name&&&&&& val&&&&&&&&&memo&&&&&&&&&&&&&&&&&
---------- ----------- --------------------
a&&&&&&&&& 1&&&&&&&&&&&a1--a的第一个值
b&&&&&&&&& 1&&&&&&&&&&&b1--b的第一个值
--三、按name分组取第一次出现的行所在的数据。
select a.* from tb a where val = (select top 1 val from tb where name = a.name) order by a.name
name&&&&&& val&&&&&&&&&memo&&&&&&&&&&&&&&&&&
---------- ----------- --------------------
a&&&&&&&&& 2&&&&&&&&&&&a2(a的第二个值)
b&&&&&&&&& 1&&&&&&&&&&&b1--b的第一个值
--四、按name分组随机取一条数据。
select a.* from tb a where val = (select top 1 val from tb where name = a.name order by newid()) order by a.name
name&&&&&& val&&&&&&&&&memo&&&&&&&&&&&&&&&&&
---------- ----------- --------------------
a&&&&&&&&& 1&&&&&&&&&&&a1--a的第一个值
b&&&&&&&&& 5&&&&&&&&&&&b5b5b5b5b5
--五、按name分组取最小的两个(N个)val
select a.* from tb a where 2 & (select count(*) from tb where name = a.name and val & a.val ) order by a.name,a.val
select a.* from tb a where val in (select top 2 val from tb where name=a.name order by val) order by a.name,a.val
select a.* from tb a where exists (select count(*) from tb where name = a.name and val & a.val having Count(*) & 2) order by a.name
name&&&&&& val&&&&&&&&&memo&&&&&&&&&&&&&&&&&
---------- ----------- --------------------
a&&&&&&&&& 1&&&&&&&&&&&a1--a的第一个值
a&&&&&&&&& 2&&&&&&&&&&&a2(a的第二个值)
b&&&&&&&&& 1&&&&&&&&&&&b1--b的第一个值
b&&&&&&&&& 2&&&&&&&&&&&b2b2b2b2
--六、按name分组取最大的两个(N个)val
select a.* from tb a where 2 & (select count(*) from tb where name = a.name and val & a.val ) order by a.name,a.val
select a.* from tb a where val in (select top 2 val from tb where name=a.name order by val desc) order by a.name,a.val
select a.* from tb a where exists (select count(*) from tb where name = a.name and val & a.val having Count(*) & 2) order by a.name
name&&&&&& val&&&&&&&&&memo&&&&&&&&&&&&&&&&&
---------- ----------- --------------------
a&&&&&&&&& 2&&&&&&&&&&&a2(a的第二个值)
a&&&&&&&&& 3&&&&&&&&&&&a3:a的第三个值
b&&&&&&&&& 4&&&&&&&&&&&b4b4
b&&&&&&&&& 5&&&&&&&&&&&b5b5b5b5b5
--七,如果整行数据有重复,所有的列都相同。
数据如下:
name val memo
a&&& 2&&&a2(a的第二个值)
a&&& 1&&&a1--a的第一个值
a&&& 1&&&a1--a的第一个值
a&&& 3&&&a3:a的第三个值
a&&& 3&&&a3:a的第三个值
b&&& 1&&&b1--b的第一个值
b&&& 3&&&b3:b的第三个值
b&&& 2&&&b2b2b2b2
b&&& 4&&&b4b4
b&&& 5&&&b5b5b5b5b5
--在sql server 2000中只能用一个临时表来解决,生成一个自增列,先对val取最大或最小,然后再通过自增列来取数据。
--创建表并插入数据:
create table tb(name varchar(10),val int,memo varchar(20))
insert into tb values('a',&&& 2,&&&'a2(a的第二个值)')
insert into tb values('a',&&& 1,&&&'a1--a的第一个值')
insert into tb values('a',&&& 1,&&&'a1--a的第一个值')
insert into tb values('a',&&& 3,&&&'a3:a的第三个值')
insert into tb values('a',&&& 3,&&&'a3:a的第三个值')
insert into tb values('b',&&& 1,&&&'b1--b的第一个值')
insert into tb values('b',&&& 3,&&&'b3:b的第三个值')
insert into tb values('b',&&& 2,&&&'b2b2b2b2')
insert into tb values('b',&&& 4,&&&'b4b4')
insert into tb values('b',&&& 5,&&&'b5b5b5b5b5')
select * , px = identity(int,1,1) into tmp from tb
select m.name,m.val,m.memo from
&&select t.* from tmp t where val = (select min(val) from tmp where name = t.name)
) m where px = (select min(px) from
&&select t.* from tmp t where val = (select min(val) from tmp where name = t.name)
) n where n.name = m.name)
drop table tb,tmp
name&&&&&& val&&&&&&&&&memo
---------- ----------- --------------------
a&&&&&&&&& 1&&&&&&&&&&&a1--a的第一个值
b&&&&&&&&& 1&&&&&&&&&&&b1--b的第一个值
(2 行受影响)
--在sql server 2005中可以使用row_number函数,不需要使用临时表。
--创建表并插入数据:
create table tb(name varchar(10),val int,memo varchar(20))
insert into tb values('a',&&& 2,&&&'a2(a的第二个值)')
insert into tb values('a',&&& 1,&&&'a1--a的第一个值')
insert into tb values('a',&&& 1,&&&'a1--a的第一个值')
insert into tb values('a',&&& 3,&&&'a3:a的第三个值')
insert into tb values('a',&&& 3,&&&'a3:a的第三个值')
insert into tb values('b',&&& 1,&&&'b1--b的第一个值')
insert into tb values('b',&&& 3,&&&'b3:b的第三个值')
insert into tb values('b',&&& 2,&&&'b2b2b2b2')
insert into tb values('b',&&& 4,&&&'b4b4')
insert into tb values('b',&&& 5,&&&'b5b5b5b5b5')
select m.name,m.val,m.memo from
&&select * , px = row_number() over(order by name , val) from tb
) m where px = (select min(px) from
&&select * , px = row_number() over(order by name , val) from tb
) n where n.name = m.name)
drop table tb
name&&&&&& val&&&&&&&&&memo
---------- ----------- --------------------
a&&&&&&&&& 1&&&&&&&&&&&a1--a的第一个值
b&&&&&&&&& 1&&&&&&&&&&&b1--b的第一个值
(2 行受影响)
等 级:ID已被封
帖 子:50
不懂,,,,怎么看起来很复杂的,,?
等 级:新手上路
帖 子:16
select distinct(kkk) from A
Distinct 返回一个集合,并从指定集合中删除重复的元组。从尾部删除重复的元组。
等 级:论坛游民
帖 子:254
专家分:10
2楼的用的是什么方法呀??&&看的不明白~~&&&4楼 我就觉得方法蛮好的 ,以前老师也是这么说的.
来 自:湖南邵阳
等 级:职业侠客
帖 子:292
专家分:371
认为2楼的方法很好了,用这个distinct关键字的话,假如我要得到这个值ID的,而已这个值是重复了,请问4楼的该怎么做啊??
等 级:ID已被封
帖 子:50
谢谢各位的回答!看起来2楼的可以,但是可惜的是我看不懂........
4楼的方法只不过是去掉某一列的重复数据,但是我的目的是去掉这一列的重复数据后,剩下来的数据要全部显示出来,也就是说整张表的所有值都要出来,这样的话不知道怎样做才可以实现?
等 级:新手上路
帖 子:38
连我也看不懂,郁闷
来 自:湖南邵阳
等 级:职业侠客
帖 子:292
专家分:371
举个例子,比如数据库中有如下数据&&&
&&a1&&&&&&&&&&&a2&&&&&&&&&&&a3&&&&&&&&&&&a4&&&&&&&&&&&a5&&&
&&1&&&&&&&&&&&& a&&&&&&&&&&&& aaa&&&&&&&&&a&&&&&&&&&&&& a&&&
&&2&&&&&&&&&&&& b&&&&&&&&&&&& bbb&&&&&&&&&b&&&&&&&&&&&& b&&&
&&3&&&&&&&&&&&& c&&&&&&&&&&&& aaa&&&&&&&&&c&&&&&&&&&&&& c&&&
&&4&&&&&&&&&&&& d&&&&&&&&&&&& bbb&&&&&&&&&d&&&&&&&&&&&& d&&&
&&5&&&&&&&&&&&& e&&&&&&&&&&&& eee&&&&&&&&&e&&&&&&&&&&&& e&&&
&&6&&&&&&&&&&&& f&&&&&&&&&&&& ddd&&&&&&&&&f&&&&&&&&&&&& f&&&
&&7&&&&&&&&&&&& g&&&&&&&&&&&& bbb&&&&&&&&&g&&&&&&&&&&&& g&&&
&&8&&&&&&&&&&&& h&&&&&&&&&&&& eee&&&&&&&&&h&&&&&&&&&&&& h&&&
&&9&&&&&&&&&&&& i&&&&&&&&&&&& eee&&&&&&&&&i&&&&&&&&&&&& i&&&
&&10&&&&&&&&&&&j&&&&&&&&&&&& aaa&&&&&&&&&j&&&&&&&&&&&& j&&&
&&如何用一条语句取得这样记录集,去掉a3中重复的字段,取a1是最小的,如下&&&
&&a1&&&&&&&&&&&a2&&&&&&&&&&&a3&&&&&&&&&&&a4&&&&&&&&&&&a5&&&
&&1&&&&&&&&&&&& a&&&&&&&&&&&& aaa&&&&&&&&&a&&&&&&&&&&&& a&&&
&&2&&&&&&&&&&&& b&&&&&&&&&&&& bbb&&&&&&&&&b&&&&&&&&&&&& b&&&
&&5&&&&&&&&&&&& e&&&&&&&&&&&& eee&&&&&&&&&e&&&&&&&&&&&& e&&&
&&6&&&&&&&&&&&& f&&&&&&&&&&&& ddd&&&&&&&&&f&&&&&&&&&&&& f
&&SELECT&&&*&&&FROM&&&aaa&&&WHERE&&&a1&&&IN(SELECT&&&MIN(a1)&&&FROM&&&aaa&&&GROUP&&&BY&&&a3)
来 自:安徽
等 级:新手上路
帖 子:287
用distinct关键字,可以消除同一列重复的数据
版权所有,并保留所有权利。
Powered by , Processed in 0.021745 second(s), 8 queries.
Copyright&, BCCN.NET, All Rights Reserved数据库中表内字段空格,如何清除?在线-mssql-电脑编程网数据库中表内字段空格,如何清除?在线作者:pdxufeng 和相关&&中表内字段空格,如何清除?如下表 hwsphh
10注:_为空格,要如何清除,字段中左面有空格,右面也有,甚至中间也有,只能一个字段进行清除吗,请给出语句。另:有没有办法将整表的空格全部删除。------回答---------------其他回答(20分)---------SQL code
UPDATE hwsp SET pm=REPLACE(REPLACE(pm,NCHAR(12288),''),CHAR(32),'')
NCHAR(12288)--全角空格CHAR(32) --半角空格
------回答---------------其他回答(20分)---------
SQL code
UPDATE hwsp SET pm=REPLACE(REPLACE(pm,NCHAR(12288),''),CHAR(32),'')
NCHAR(12288)--全角空格CHAR(32) --半角空格
相关资料:|||||||数据库中表内字段空格,如何清除?在线来源网络,如有侵权请告知,即处理!编程Tags:                &                    博客访问: 163333
博文数量: 62
博客积分: 1410
博客等级: 上尉
技术积分: 640
注册时间:
IT168企业级官微
微信号:IT168qiye
系统架构师大会
微信号:SACC2013
分类: 数据库开发技术
查找表中多余的重复记录(多个字段) 例子表名:suite查找suite表中其中5个字段重复的记录,这五个字段分别是comp_id,proj_id,buil_id,part_id,id查询的SQL代码如下:
SELECT *FROM suite a INNER JOIN&&&&&&&&& (SELECT comp_id, proj_id, buil_id, part_id, id&&&&&&&& FROM suite&&&&&&&& GROUP BY comp_id, proj_id, buil_id, part_id, id&&&&&&&& HAVING COUNT(*) > 1) b P_ID = b.comp_id AND &&&&& a.PROJ_ID = b.proj_id AND a.BUIL_ID = b.buil_id AND a.PART_ID = b.part_id AND &&&&& a.id = b.idORDER P_ID, a.PROJ_ID, a.BUIL_ID, a.PART_ID, a.id
现在是想删除suite表中多余的重复字段,只保留字段no值最小的字段
drop table #tmp
drop table #tmp2
select * into #tmp from suite
select min(no) as id1 into #tmp2 from #tmp group by comp_id,proj_id,buil_id,part_id,id
delete from suite
insert into suite(comp_id,proj_id,buil_id,part_id,id,addid,area,price,discprice,money,type,
[use],declared,taxed,sailed,time,paid2,paid,prein,reprein,paid3)select comp_id,proj_id,buil_id,part_id,id,addid,area,price,discprice,money,type,
[use],declared,taxed,sailed,time,paid2,paid,prein,reprein,paid3& from #tmp where no in (
select id1 from #tmp2)
阅读(738) | 评论(0) | 转发(0) |
相关热门文章
给主人留下些什么吧!~~
请登录后评论。

我要回帖

更多关于 eclipse查看class文件 的文章

 

随机推荐