SQL-使用外键的复杂查询
所以,我对SQL完全陌生,但我所学课程中的书毫无用处,我正试图为这门课程做一个项目。互联网对我并没有太大帮助(我不知道从哪里开始),所以我想寻找到好的教程的链接,以及一个非常具体的查询帮助 如果我说的不够清楚,请让我解释一下!:) 假设在名为SQL-使用外键的复杂查询,sql,Sql,所以,我对SQL完全陌生,但我所学课程中的书毫无用处,我正试图为这门课程做一个项目。互联网对我并没有太大帮助(我不知道从哪里开始),所以我想寻找到好的教程的链接,以及一个非常具体的查询帮助 如果我说的不够清楚,请让我解释一下!:) 假设在名为jewel\u store的数据库中有两个表sale和p\u sale sale包含两列:sale\u code和sale\u date p\u sale包含引用上述sale\u ID、p\u ID、p\u sl\u数量和 p_sl_值 sale\u cod
jewel\u store
的数据库中有两个表sale
和p\u sale
sale
包含两列:sale\u code
和sale\u date
p\u sale
包含引用上述sale\u ID
、p\u ID
、p\u sl\u数量
和
p_sl_值
sale\u code
是sale
的主键,sale\u code,p\u ID
是p\u sale
目前p_IDp_ID
没有多大用处,所以在大多数情况下忽略它
p_sl_数量
为int
和p_sl_值
为double(8,2)
。第一个是购买产品的数量,第二个是每件产品的价值
很明显,sale\u code
可以链接到p\u sale
表中的多个条目(例如,对于sale\u code 1,我有两个关于p\u sale的条目)
所有这些都是基于我从任务中得到的信息,并且得到了正确的实现,并且在中有一些示例值
我现在要做的是找出某个月的销售总收入。我最初的方法是开始一步一步地构建所有内容,因此我得出如下观点:
选择 作为销售月收入的总和(p_sl_值*p_sl_数量), p_sale.sale_代码 来自jewel_store.p_销售 按p_销售分组。销售代码
这可能已经完成了一半,因为我可以得到商店销售产生的总收入。所以我的下一步是使用这个查询并从中选择。我已经把它搞砸了好几次了,现在我都抓狂了。我是这样做的:首先,我只需要在我的最终表格中打印SELECT SUM(sales_monthly_income), sales_monthly_income, EXTRACT(MONTH FROM jewel_store.sale.sale_date) AS sales_month FROM ( SELECT SUM(p_sl_value * p_sl_quantity) AS sales_monthly_income, sale_CODE FROM jewel_store.p_sale GROUP BY sale_CODE ) as code_income, jewel_store.sale GROUP BY sales_month
和每月总收入
列,但我用它来澄清其中的所有错误。我想我需要以某种方式使用引用另一个表的外键,但我的书在帮助我方面是完全无用的。我希望有人能解释为什么这是错误的,什么是正确的,请给我指一个好的pdf、网站或任何东西来学习如何做这类事情。(我查过W3SCHOOLS,它对基础知识有好处,但对太高级的东西没有好处)月
提前谢谢 从我的头顶上看,这可能就是它,按月分组计算价值乘以数量的总和SELECT SUM(p.p_sl_value * p.p_sl_quantity) AS sales_monthly_income, month(s.sale_date) FROM p_sale p inner join sale s on s.sale_code = p.sale_code GROUP BY MONTH(s.sale_date)
工作起来很有魅力!仍然在寻找一些关于如何使用外键的参考资料,但我想我现在懂多了一点!谢谢!我想……我知道这一点,但是对于SQL来说,这里的事情似乎还可以,而且我真的可以使用页面的列表格式,这非常有帮助!不过,我需要比学校更好的资源