MySQL使用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的左边为新增字段的固定值,右边才是新增字段的字段名,此时字段名不用加引号,如果固定值为数值型则不用加引号,如果固定值为其他类型则必须加引号。

加油!!!!!

你可能感兴趣的:(mysql)