cobby 发表于 2008-1-28 13:02

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

比如有以下数据:

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

请问应该如何做?

deleter 发表于 2008-1-28 15:49

笨办法:
select name,number,val(age)+1 from table

deleter 发表于 2008-1-28 15:53

我觉得还是应该先用update更新,然后在查询[em12] [em12]

静源 发表于 2008-2-1 16:19

二楼的办法我试了,不行呀,不过我没有找到什么办法,我想还是update后再查询[em02]

jznhljg 发表于 2008-7-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]

编程论坛