mysql 字段 符号_mysql数据库字段带符号的问题

大神们求助.关于该怎么查询带有特殊意义的字段.譬如字段是avg(xxx),好像mysql给看成一个函数的,不认为是字段名.我该怎么用查找方法显示字段?

首先,我创建了一个表,里面录入了成绩,代码如下:

create database testdb2;

use testdb2;

create table test1(

coursename varchar(40),

score int

);

insert into test1 values('语文',98);

insert into test1 values('语文',78);

insert into test1 values('数学',79);

insert into test1 values('数学',69);

insert into test1 values('数学',90);

insert into test1 values('英语',80);

insert into test1 values('英语',90);

这是表1的内容:

b5b0b1954d7b1b86a4242bbd9d0c05eb.gif

表1.png (4.41 KB, 下载次数: 0)

2016-7-3 20:24 上传

然后,我根据课程名分组,求平均分创建了一个表格.

代码如下:

create table test2(select coursename,avg(score) from test1 group by coursename);

这是表2的结构和内容:

b5b0b1954d7b1b86a4242bbd9d0c05eb.gif

表2结构.png (2.05 KB, 下载次数: 0)

2016-7-3 20:28 上传

b5b0b1954d7b1b86a4242bbd9d0c05eb.gif

表2内容.png (1.93 KB, 下载次数: 0)

2016-7-3 20:28 上传

问题来了,我如果单独查询平均分的字段的话,用 select avg(score) from test2代码的话就会报错如下:

ERROR 1054 (42S22): Unknown column 'score' in 'field list'

mysql会默认avg(score)这个字段是一个函数,我该怎么查询avg(score)这个字段呢?

我琢磨的解决方案是这样的.

用别名创建平均分的表格:

create table test3(select coursename,avg(score) as avg from test1 group by coursename);

创建表格的内容就是这样.

b5b0b1954d7b1b86a4242bbd9d0c05eb.gif

表3.png (1.75 KB, 下载次数: 0)

2016-7-3 20:32 上传

这样就解决了这个问题.

可是,我的问题是我该怎么查询avg(score)这个字段下列的内容呢?有什么转义的方法么?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值