求一sql语句
库存表:
代码char) 类别ID(int) 数量(int)
零件表:
代码(char) 类别ID(int) 预警值(int) 名称(char)
类别ID+代码 构成一零件的唯一标识。
现要求求出所有库存量小于其预警值的零件(包括0库存),并根据库存量决定紧急程度(为预警值的0-40%:高;41%-70%:中;71%-99%:低),以紧急程度排序。
没有加入“紧急程度”时的语句大概是这样的:
select A.代码,A.配件别名,A.类别ID,A.预警值,B.数量 from 配件 A left join 库存 B on A.类别ID=B.类别ID and A.代码=B.代码
where (not exists (select * from 库存 C where A.类别ID=C.类别ID and A.代码=C.代码)) or (A.预警值>B.数量)