怎么列提纲,怎么插入列

怎么插入列 - 故障解答 - 电脑教程网

怎么插入列

日期:2006-06-03   荐:
怎么插入列在一张表table1中增加一列SN.取默认值为0....用SQL语言怎么写啊一张表 选课表(学号,课程号,成绩)求选课最多的学生学号...新人..希望大家详细点..谢谢拉使用alter命令吧具体查一下sql的联机帮助,有例子看alter table 表 add SN varchar(100) default 0一张表 选课表(学号,课程号,成绩)求选课最多的学生学号select a.学号 from 选课表 a where not exists(select 1 from 选课表 where 學號=a.學號 and課程數>a.課程數)Alter table 表名 Add SN Int default 0talantlee好像理解错了,他的选课表中没有課程數这个字段的,要自己统计的。Select Top 1 学号 from (Select 学号,Count(*) As 课程数 from 选课表 Group By 学号)A Order By 课程数 Desc不好意思alter table 表 add SN varchar(100) default 0是個錯句ALTER TABLE dbo.表 ADD CONSTRAINTDF_表_字段名 DEFAULT 0 FOR 字段名-----這個應該沒問題了alter table A add SN varchar(10) update a set sn=isnull(sn,0)alter table 表 add SN varchar(100) default 0这样加列.列的默认值是NULL那怎么删除此列呢?Alter table 表名 Add SN Int default 0加入的默认值为0删除列ALTER TABLE 表名 DROP COLUMN SN服务器: 消息 5074,级别 16,状态 1,行 1对象 'DF__选课表__补考成绩1111__21B6055D' 依赖于 列 '补考成绩1111'。服务器: 消息 4922,级别 16,状态 1,行 1ALTER TABLE DROP COLUMN 补考成绩1111 失败,因为有一个或多个对象访问此列。出错提示你这一列在别的表中有关联??别的表好像没的...就在一张表中有此列.....楼上的大哥...你有QQ不///要不你在线指导一下.我的27990613 paoluo(一天到晚游泳的鱼) ( ) 信誉:100 2005-04-16 16:20:00 得分: 0 talantlee好像理解错了,他的选课表中没有課程數这个字段的,要自己统计的。Select Top 1 学号 from (Select 学号,Count(*) As 课程数 from 选课表 Group By 学号)A Order By 课程数 Desc 哦,我是理解錯了,不過你的不完整,當出現2個人都選課都是最大的時候呢??----建立測試環境create table a(sno int,cno int,c int)insert into aselect 1,2,3 union allselect 1,2,3 union allselect 21,2,3 union allselect 1,2,3 union allselect 2,2,3 union allselect 1,2,3 union allselect 3,2,3 union allselect 1,2,3 union allselect 3,2,3 union allselect 1,2,3 union allselect 3,2,3----結果select sno,count(*) as counter into #t from a group by sno select * from #t where #t.counter =(select max(counter) as c1 from #t)drop table #t 至於修改成自定義值的你參照下面 Hopewell_Go(一定好起來) ( ) 信誉:100 2005-04-16 16:31:00 得分: 0 alter table A add SN varchar(10) ---default 0update a set sn=isnull(sn,0) ----把空值換成0 我知道原因了,没有去掉那个默认值,你将你去掉列的语句写出来,我帮你改写。declare @name varchar(20)select @name=b.name from syscolumns a,sysobjects b where a.id=object_id(N'表名') and b.id=a.cdefault and a.name='字段名' and b.name like 'DF%'exec('Alter table 表名 drop constraint ' @name) Alter Table 表名 Drop Column 字段名表名、字段名分别用你的表明和字段名替换。谢谢大家..列已删除求选课最多的学生学号当有多个学生选课一样的时候怎么办?求选课最多的学生学号当有多个学生选课一样的时候怎么办?----------------------这个时候你是需要所有的学生号,还是只要一个??如果有3个人的选课数一样多...那么那3个人的学号都输出Select 学号 from (Select 学号,Count(*) As 课程数 from 选课表 Group By 学号)A Where Not Exists(Select * from (Select 学号,Count(*) As 课程数 from 选课表 Group By 学号) B Where 课程数>A.课程数)谢谢大家////最近学SQL.....发现课本上的东西太少了....楼上的大哥...A B 这是怎么回事啊能不能给我解释一下啊....A B 都是查询出的记录集的别名。
标签: