注册 登录
编程论坛 SQL Server论坛

如何在查询所有列的同时修改某一列的值?sql语句怎么写?

cobby 发布于 2008-01-28 13:02, 2851 次点击
比如有以下数据:

table
name  number   age
a      001     20
b      002     21
c      003     22

我用select * from table可以查出所有的值,可现在我希望查出所有的值的同时将年纪都加1,查询结果希望是:

name   number  age
a       001     21
b       002     22
c       003     23

请问应该如何做?
4 回复
#2
deleter2008-01-28 15:49
笨办法:
select name,number,val(age)+1 from table
#3
deleter2008-01-28 15:53
我觉得还是应该先用update更新,然后在查询
#4
静源2008-02-01 16:19
二楼的办法我试了,不行呀,不过我没有找到什么办法,我想还是update后再查询
#5
jznhljg2008-07-24 01:11
mysql> select * from student;
+-----------+-------+------+------+-------+
| sno       | sname | ssex | sage | sdept |
+-----------+-------+------+------+-------+
| 200215121 | 李勇  | 男   |   20 | CS    |
| 200215122 | 刘晨  | 女   |   21 | CS    |
| 200215123 | 王敏  | 女   |   18 | MA    |
| 200215124 | 张立  | 男   |   19 | IS    |
+-----------+-------+------+------+-------+

mysql> select sno,sname,ssex,sage+1 as sage from student;
+-----------+-------+------+------+
| sno       | sname | ssex | sage |
+-----------+-------+------+------+
| 200215121 | 李勇  | 男   |   21 |
| 200215122 | 刘晨  | 女   |   22 |
| 200215123 | 王敏  | 女   |   19 |
| 200215124 | 张立  | 男   |   20 |
+-----------+-------+------+------+
1