• 主页
  • 基础类
  • 应用实例
  • 新技术前沿

sql sever的两个小问题。

ruhong 海口林业局 工人  2014-02-11 06:40:13
一.表a,我如何选中某列之外的所有列。

比如 表a

a1 a2 a3 ...... axx
1 2 3 xxxxxx xx

我想选a3之外的所有列,如何写sql 语句?


二. 有表a

id 姓名 状态
1 王x xx
2 李x yy
3 刘x ww

我想把
id 姓名 状态
1 王x xx
3 刘x ww
生成一个临时表保存在sql server中,等过一段时间,对他的"状态”进行修改,
再返回去修改表a中的相应记录,如何做?









...全文
150 点赞 收藏 8
写回复
8 条回复
走出一条新道路 2014年02月13日
引用 4 楼 DBA_Huangzj 的回复:
[quote=引用 3 楼 19850713 的回复:] [quote=引用 1 楼 DBA_Huangzj 的回复:] 问题1:
DECLARE @s NVARCHAR(4000)
SET @s = ''
SELECT  @s = @s + ',' + 'isnull('+QUOTENAME(name)+','''')'
FROM    syscolumns
WHERE   id = OBJECT_ID('表名')
        --AND name NOT IN ( '不希望显式的列' )
SET @s = STUFF(@s, 1, 1, '')
EXEC('select '+@s+' from 表名  ')
问题2: select * into #t from a where id in (1,3) update a set a.状态=t.状态 from #t t where a.id=t.id
我们强大的版主,你是怎么练习的这么厉害,有没有可推荐的书籍或者学习方法呢?我看了很多你的回复,很专业。读书的学习过SQL现在忘记了很多,工作中又转向这个行业了,学要回顾,有什么好方法吗?[/quote]作为被骂的最多的版主,厚脸皮是最重要的[/quote] 那我也来踩一踩
回复 点赞
阳泉酒家小当家 2014年02月12日
引用 3 楼 19850713 的回复:
[quote=引用 1 楼 DBA_Huangzj 的回复:] 问题1:
DECLARE @s NVARCHAR(4000)
SET @s = ''
SELECT  @s = @s + ',' + 'isnull('+QUOTENAME(name)+','''')'
FROM    syscolumns
WHERE   id = OBJECT_ID('表名')
        --AND name NOT IN ( '不希望显式的列' )
SET @s = STUFF(@s, 1, 1, '')
EXEC('select '+@s+' from 表名  ')
问题2: select * into #t from a where id in (1,3) update a set a.状态=t.状态 from #t t where a.id=t.id
我们强大的版主,你是怎么练习的这么厉害,有没有可推荐的书籍或者学习方法呢?我看了很多你的回复,很专业。读书的学习过SQL现在忘记了很多,工作中又转向这个行业了,学要回顾,有什么好方法吗?[/quote] 呵呵,慢慢来,关键是熟能生巧
回复 点赞
ruhong 2014年02月12日
老了,偷偷懒。
回复 点赞
HuoLarry 2014年02月11日
一句话道出了真谛,致敬!!!
回复 点赞
發糞塗牆 2014年02月11日
引用 3 楼 19850713 的回复:
[quote=引用 1 楼 DBA_Huangzj 的回复:] 问题1:
DECLARE @s NVARCHAR(4000)
SET @s = ''
SELECT  @s = @s + ',' + 'isnull('+QUOTENAME(name)+','''')'
FROM    syscolumns
WHERE   id = OBJECT_ID('表名')
        --AND name NOT IN ( '不希望显式的列' )
SET @s = STUFF(@s, 1, 1, '')
EXEC('select '+@s+' from 表名  ')
问题2: select * into #t from a where id in (1,3) update a set a.状态=t.状态 from #t t where a.id=t.id
我们强大的版主,你是怎么练习的这么厉害,有没有可推荐的书籍或者学习方法呢?我看了很多你的回复,很专业。读书的学习过SQL现在忘记了很多,工作中又转向这个行业了,学要回顾,有什么好方法吗?[/quote]作为被骂的最多的版主,厚脸皮是最重要的
回复 点赞
HuoLarry 2014年02月11日
引用 1 楼 DBA_Huangzj 的回复:
问题1:
DECLARE @s NVARCHAR(4000)
SET @s = ''
SELECT  @s = @s + ',' + 'isnull('+QUOTENAME(name)+','''')'
FROM    syscolumns
WHERE   id = OBJECT_ID('表名')
        --AND name NOT IN ( '不希望显式的列' )
SET @s = STUFF(@s, 1, 1, '')
EXEC('select '+@s+' from 表名  ')
问题2: select * into #t from a where id in (1,3) update a set a.状态=t.状态 from #t t where a.id=t.id
我们强大的版主,你是怎么练习的这么厉害,有没有可推荐的书籍或者学习方法呢?我看了很多你的回复,很专业。读书的学习过SQL现在忘记了很多,工作中又转向这个行业了,学要回顾,有什么好方法吗?
回复 点赞
jorkin_me 2014年02月11日
唉,做技术不能偷懒呀!!!
回复 点赞
發糞塗牆 2014年02月11日
问题1:
DECLARE @s NVARCHAR(4000)
SET @s = ''
SELECT  @s = @s + ',' + 'isnull('+QUOTENAME(name)+','''')'
FROM    syscolumns
WHERE   id = OBJECT_ID('表名')
        --AND name NOT IN ( '不希望显式的列' )
SET @s = STUFF(@s, 1, 1, '')
EXEC('select '+@s+' from 表名  ')
问题2: select * into #t from a where id in (1,3) update a set a.状态=t.状态 from #t t where a.id=t.id
回复 点赞
发动态
发帖子
MS-SQL Server
创建于2007-09-28

1.4w+

社区成员

25.3w+

社区内容

MS-SQL Server相关内容讨论专区
社区公告
暂无公告