我试图在SQL中显示来自同一数据库的三个不同列,但每个列均来自不同的表。一个叫做“名称”,我也希望将其输出分组;另一列是“ Money”两列之间的计算,第三列是“日期”。 NameId是连接Name和Money列的内容,MoneyId将Money和Date连接起来
我正在dbVisualizer上创建它,这三列是同一数据库内不同表的所有部分。如何在按“名称”列分组的同时显示带有正确日期的计算出的货币库伦
我知道这是不正确的,但这是我到目前为止所掌握的。我该如何进行货币计算,而不必将其属性按功能分组,以便运行。
android.R.attr.colorActivatedHighlight
我想在显示屏上看到它。我是SQL新手,所以非常感谢所有帮助。
fun Context.themeColor(@AttrRes attrRes: Int): Int {
val typedValue = TypedValue()
theme.resolveAttribute (attrRes, typedValue, true)
return typedValue.data
}
相反,我看到了
themeColor(android.R.attr.colorActivatedHighlight)
我希望将钱按每个名称,在每个日期进行分组,但是每个名称每个月都有一个以上的已付款/已发送
答案 0 :(得分:0)
我相信这能为您提供所需的东西-交叉申请有点奇怪,但它很方便:)如果您想了解更多有关该信息,那么Google可以为您提供很多帮助!
Select
A.Name
,b.[Paid]
,b.[Sent]
,min(C.DateId) [Date_Id]
,(CAST(b.paid As decimal(5,0))/CAST(nullif(b.[sent], 0) as decimal(5,0))) * 100 [Money]
From
a
cross apply (
select
max(billspaid) [Paid]
,max(billssent) [Sent]
from
B
where
A.NameId = B.NameId
) b
inner join C
on B.MoneyId = C.MoneyId
group by
A.Name
,b.[Paid]
,b.[Sent]
编辑
Select
a.Name
,b.[Paid]
,b.[Sent]
,min(C.DateId) [Date_Id]
,(CAST(b.paid As decimal(5,0))/CAST(nullif(b.[sent], 0) as decimal(5,0))) * 100 [Money]
From
a
cross apply (
select
max(billspaid) [Paid]
,max(billssent) [Sent]
from
B
where
A.NameId = B.NameId
) b
inner join b b1
on a.nameid = b1.nameid
inner join c
on b1.MoneyId = c.MoneyId
group by
a.Name
,b.[Paid]
,b.[Sent]