eyeopener面试题及答案.docx

eyeopener面试题及答案

一、SQL编程(30分)

1.题目:假设有一个用户订单表`orders`,包含字段`user_id`(用户ID)、`order_date`(订单日期)和`amount`(订单金额)。请编写SQL语句,计算每个用户截至到每一天的累计订单总金额(即累计消费)。

答案:使用窗口函数`SUM(amount)OVER(PARTITIONBYuser_idORDERBYorder_date)`即可计算每个用户按日期排序的累计金额。

2.题目:在电商场景中,有一个商品表`products`和一个销售记录表`sales`。请查询出销量排名前10的商品名称及其销量。

答案:`SELECTp.product_name,COUNT(s.sale_id)assales_countFROMproductspJOINsalessONp.product_id=s.product_idGROUPBYp.product_id,p.product_nameORDERBYsales_countDESCLIMIT10;`

3.题目:请解释`LEFTJOIN`和`INNERJOIN`的区别,并给出一个使用场景示例。

答案:`INNERJOIN`只返回两个表中匹配的

文档评论(0)

1亿VIP精品文档

相关文档