Mysql如何在select查询时追加(添加)一个字段并指定值

吾爱主题 阅读:138 2024-04-01 23:26:19 评论:0

在select查询时追加(添加)一个字段并指定值

在特定时候,在 mysql 的查询结果中我们需要追加一个字段来实现某些特定的功能,这时我们可以用到以下语法来实现

?
1 as 字段

比如我们需要给这个查询结果追加一个 xx 字段并赋值为 null ,可以这样实现

?
1 select *, null as xx from topic;

使用select查询时,在查询结果中增加一个字段并指定固定值

假设需求是这样的:

?
1 2 3 4 5 6 7 8 mysql> desc user ; + -------+----------+------+-----+---------+----------------+ | Field | Type     | Null | Key | Default | Extra          | + -------+----------+------+-----+---------+----------------+ | id    | int (11)  | NO   | PRI | NULL     | auto_increment | | name   | char (30) | NO   |     | NULL     |                | + -------+----------+------+-----+---------+----------------+ 2 rows in set (0.01 sec)

假设user表中,有id和name两个字段,现在需要查询user表中所有数据,并增加一个字段(is_person),判断该记录所描述的是不是一个人?

别去钻牛角尖,很明显,is_person的值始终为true,那么在查询的时候,就可以在返回结果中新增一个字段is_person,并指定值为true。

?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 mysql> select * from user ; + ----+------+ | id | name | + ----+------+ |  1 | abc  | |  2 | xyz  | + ----+------+ 2 rows in set (0.00 sec)   mysql> select *, "true" as is_person from user ; + ----+------+-----------+ | id | name | is_person | + ----+------+-----------+ |  1 | abc  | true       | |  2 | xyz  | true       | + ----+------+-----------+ 2 rows in set (0.00 sec)

注意上面的格式,使用关键字as,这里的as和平时使用的as代表的意思是相同的!!!

平常使用as是为字段取一个别名,as的左边是一个原始字段名,右边是新的别名,该别名会显示在查询结果中,而原始字段名代表的就是该字段的值;

此处为新增字段指定固定值,as的左边为新增字段的固定值,右边才是新增字段的字段名,此时字段名不用加引号,如果固定值为数值型则不用加引号,如果固定值为其他类型则必须加引号。

以上为个人经验,希望能给大家一个参考,也希望大家多多支持服务器之家。 

原文链接:https://blog.csdn.net/xiaobinqt/article/details/83071185

可以去百度分享获取分享代码输入这里。
声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

【腾讯云】云服务器产品特惠热卖中
搜索
标签列表
    关注我们

    了解等多精彩内容