标题:如何在查询所有列的同时修改某一列的值?sql语句怎么写?
只看楼主
cobby
Rank: 1
等 级:新手上路
威 望:1
帖 子:565
专家分:0
注 册:2007-7-11
 问题点数:0 回复次数:4 
如何在查询所有列的同时修改某一列的值?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

请问应该如何做?
搜索更多相关主题的帖子: sql 语句 name age number 
2008-01-28 13:02
deleter
Rank: 1
等 级:新手上路
威 望:1
帖 子:858
专家分:0
注 册:2007-7-5
得分:0 
笨办法:
select name,number,val(age)+1 from table

物理学家的问题在于他们总是试图用作弊的方法获得结果。
数学家的问题在于他们总是试图获得最幼稚的问题的结果。
软件测试工程师的问题在于他们总是试图用作弊的方法获得最幼稚的问题的结果。
2008-01-28 15:49
deleter
Rank: 1
等 级:新手上路
威 望:1
帖 子:858
专家分:0
注 册:2007-7-5
得分:0 
我觉得还是应该先用update更新,然后在查询

物理学家的问题在于他们总是试图用作弊的方法获得结果。
数学家的问题在于他们总是试图获得最幼稚的问题的结果。
软件测试工程师的问题在于他们总是试图用作弊的方法获得最幼稚的问题的结果。
2008-01-28 15:53
静源
Rank: 1
等 级:新手上路
帖 子:38
专家分:0
注 册:2007-8-25
得分:0 
二楼的办法我试了,不行呀,不过我没有找到什么办法,我想还是update后再查询
2008-02-01 16:19
jznhljg
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2008-3-4
得分:0 
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 |
+-----------+-------+------+------+
2008-07-24 01:11



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-198942-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.448795 second(s), 10 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved