sql-server - 如何编写此 MSSQL 数据库查询?
问题描述
我有一个特定的场景,我必须根据一些给定的排列和组合规则分配适用于某些 Car Leads 的折扣。
为了详细解释,我有这两个表:
和:
我想要的是根据潜在客户规则中匹配的最大变量数从规则中获得最佳规则。
我该如何为此编写SQL?
解决方案
像这样的东西?
SELECT ld.Make, ld.FuelType, MAX(p.Discount)
FROM LeadData ld
LEFT JOIN Permutation p on (ld.City = p.City OR p.City IS NULL) AND (p.FuelType = ld.FuelType OR p.FuelType IS NULL) AND (ld.Make = p.Make)
GROUP BY ld.Make, ld.FuelType
推荐阅读
- sql - 按相似性对行进行分组
- sql - 使用 to_date 给出 ORA-01722 的问题:无效号码
- javascript - 我可以在单独的线程中记录 MS Insights 调用吗?
- postgresql - Heroku Connect,在 postgres 中检测 salesforce 更新
- sql - 如何在 ORACLE SQL 中将 VARCHAR 转换为日期?
- electron - 使用 Electron-builder 自定义 NSIS 安装程序
- pyspark - 为 Spark SQL 中的每一分钟差异创建一个新行
- c# - iOS 和 Android 中的 Xamarin 后退按钮辅助功能名称
- mysql - 在 docker 容器中时无法连接到 MySQL(python MySql-Connector)
- javascript - 使用jQuery更改元素内部跨度的文本不起作用