Translating Amount Into Color Using SAQL

ANC301 - Lesson 8: Modifying Queries in Dashboards

📄 第 306 页 🎬 视频课程

课程章节介绍

让我们一步一步来理解如何使用SAQL 306将数量转化为颜色。这个过程其实就像是在给数据“上色”,根据不同的条件,给数据点赋予不同的颜色。这样,当我们查看数据时,一眼就能看出哪些数据是重要的,哪些是需要关注的。 首先,我们需要加载数据集。你可以想象,这就像是从一个巨大的仓库里拿出我们需要的货物。在这个例子中,我们加载的数据集叫做“机会_金额_销售_状态”。 ```saql q = 加载“机会_金额_销售_状态”; ``` 接下来,我们要对数据进行一些处理。这里,我们想要根据“LeadSource”(潜在客户来源)和“Amount”(金额)来决定每一行的颜色。如果潜在客户来源是“Web”,并且金额总和大于或等于100,000,我们就给这行数据赋予一个鲜艳的橙色(#ff4500),否则就赋予黑色(#000000)。 ```saql (case when LeadSource == "Web" and sum(q."Amount") >= 100000 then "#ff4500" else "#000000" end) as "Inbox Color"; ``` 然后,我们需要存储每一行的“LeadSource”和“Amount”的总和。这就像是在整理我们的货物,把每一类的货物都统计一下,看看总共有多少。 ```saql q = foreach q generate q."LeadSource" as "LeadSource", sum(q."Amount") as "Amount"; ``` 接下来,我们要根据“LeadSource”来分组数据。这就像是在把货物按照不同的类别分开,方便我们进一步处理。 ```saql q = group q by "LeadSource"; ``` 最后,我们要评估每一行的“Amount”总和和“LeadSource”,并根据结果返回颜色。这就像是在给每一类货物贴上标签,告诉我们这些货物的重要程度。 ```saql q = foreach q generate q."LeadSource" as "LeadSource", sum(q."Amount") as "Amount", (case when LeadSource == "Web" and sum(q."Amount") >= 100000 then "#ff4500" else "#000000" end) as "Inbox Color"; ``` 总结一下,我们首先加载了数据集,然后根据潜在客户来源和金额总和来决定每一行的颜色。接着,我们存储了每一行的“LeadSource”和“Amount”的总和,并根据“LeadSource”来分组数据。最后,我们评估了每一行的“Amount”总和和“LeadSource”,并根据结果返回了颜色。这样,我们就完成了将数量转化为颜色的过程。