MYSQL知道出生日期怎么查询年龄

表名mm
字段有id,name,salary,birthday,dept
1.求年龄啊
2.如何更改dept为1003的员工的工资为1003这一组员工的平均数
3.假如有一个字段是aa varchar(10000) 里面的内容很长 如何只显示前100个字

求各位大神解答下

第1个回答  推荐于2021-02-02
1,select id, name,salary,year(birthday)-year(now()) as age ,dept from mm;
2,update mm set salary=(select * from (select avg(salary) from mm) as tmp) where dept=1003;
3,select left(aa,100) from tbname;

---------------------------------------------------娱乐休闲 > 星座/运势
你问题的板块不对追问

很感谢 不过你第2句错误了 应该是
update mm set salary=(select * from (select avg(salary) from mm where dept=1003) as tmp) where dept=1003;

肯定是你题目没看清楚~
对了 问你个问题 为什么第2句后面要加as tmp 不加就报错呢 求解(as可有可无这个知道的 tmp也可以乱改的)
1和3没问题了

追答

这个是mysql里特有的,不能通过对自己做子查询匹配数据做更新和删除,所以一层查询,

本回答被提问者采纳
相似回答