SQL;数据操作;根据员工工龄给员工涨工资,1年工龄增加1个job_lvl,但不能超过该职位的最高level

select * from jobs
Update Employee Set job_lvl=job_lvl+(Datepart(yyyy,Getdate())-Datepart(yyyy,hire_date))
Update Employee Set job_lvl=(Select Max_lvl From Jobs Where Jobs.job_id=Employee.job_id) Where Employee.job_lvl>(Select Max_lvl From Jobs Where Jobs.job_id=Employee.job_id)


(15 行受影响)
消息 220,级别 16,状态 2,第 2 行
发生数据类型 tinyint 的算术溢出错误,值 = 266。
语句已终止。

(0 行受影响)

小弟才出学SQL ,在这个问题上纠结了好几天, 有哪位大哥看到请帮我解决下· ,如果有更好的实现问题标题的,也在楼下给我顶起哈·在线等, 如果还有不清晰的地方 加我Q 196536910

守着星空守着你
浏览 966回答 3
3回答

哔哔one

tinyint 从 0 到 255 的整型数据。存储大小为 1 字节。 说明你超出这个范围了
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

SQL Server