2022携程提前批最后一批-数据分析笔试
凉得挺惨的,但还是想交流一下编程题第一题和最后一题SQL怎么写。
第一题我的通过率是36%,不知道哪里有问题
while True: try: n=int(input()) l=[] for _ in range(n): s=input().split(" ") l.append([s[0],int(s[1]),s[2]]) l.sort(key=lambda x:x[1], reverse=False) for item in l: print(item[1],item[2],item[0]) l.sort(key=lambda x:(x[2],-x[1])) for item in l: print(item[2],item[1],item[0]) except: break最后一题我在自己的编译器上用测试样例得到的结果和题目里是一样的,在赛码上就完全不通过,或许有大佬能帮忙看看嘛
select substr(a.pay_date,1,7) as pay_month,c.department_id ,round(avg(a.amount),1) as dept_avg_sal ,round(max(b.corp_avg_sal),11) as corp_avg_sal ,iif(avg(a.amount)=max(b.corp_avg_sal),'same',iif(avg(a.amount)>max(b.corp_avg_sal),'higher','lower')) as comparison from salary a left join employee c on a.employee_id=c.employee_id left join( select substr(pay_date,1,7) as pay_month ,avg(amount) as corp_avg_sal from salary group by substr(pay_date,1,7) )b on substr(a.pay_date,1,7)=b.pay_month group by substr(a.pay_date,1,7),c.department_id order by substr(a.pay_date,1,7),c.department_id