如何在 xslt 中计算天数

Posted

技术标签:

【中文标题】如何在 xslt 中计算天数【英文标题】:How to want to count number of days in xslt 【发布时间】:2021-12-26 21:15:25 【问题描述】:

我有一个场景,我想计算天数。如果工人有 2 个具有相同值的日期,则应计为 1 天。基本上计算员工在家工作的总天数。从下面的 xml 示例中,3 个时间块,2 个相同的日期和 1 个不同的日期,应该算作 2 天。任何人都可以帮助解决这个问题

  **<wd:Time_Blocks_for_Worker_group>
        <wd:Date>2021-10-11</wd:Date>
       <wd:Time_Entry_Code wd:Descriptor="Mobile Working (In-Out)">
            <wd:ID wd:type="Time_Code_Reference_ID">TIME_ENTRY_CODE-3-97</wd:ID>
        </wd:Time_Entry_Code>
    </wd:Time_Blocks_for_Worker_group>
    <wd:Time_Blocks_for_Worker_group>
        <wd:Date>2021-10-11</wd:Date>
        <wd:Reported_Quantity>5</wd:Reported_Quantity>
        <wd:Time_Entry_Code wd:Descriptor="Mobile Working (In-Out)">
            <wd:ID wd:type="Time_Code_Reference_ID">TIME_ENTRY_CODE-3-97</wd:ID>
        </wd:Time_Entry_Code>
    </wd:Time_Blocks_for_Worker_group>
    <wd:Time_Blocks_for_Worker_group>
        <wd:Date>2021-10-12</wd:Date>
        <wd:Reported_Quantity>9</wd:Reported_Quantity>
        <wd:Time_Entry_Code wd:Descriptor="Mobile Working (In-Out)">
            <wd:ID wd:type="Time_Code_Reference_ID">TIME_ENTRY_CODE-3-97</wd:ID>
        </wd:Time_Entry_Code>
    </wd:Time_Blocks_for_Worker_group>**

需要这样的输出 日期- 2021-10-11,2021-10-12 总天数 2

【问题讨论】:

请张贴minimal reproducible example,而不是脱离上下文的代码sn-ps。 【参考方案1】:

IIUC,你想做的事(在 XSLT 2.0 中):

count(distinct-values(wd:Time_Blocks_for_Worker_group/wd:Date))

【讨论】:

以上是关于如何在 xslt 中计算天数的主要内容,如果未能解决你的问题,请参考以下文章

如何在VB中计算两个日期间的天数

如何写计算两个日期之间的天数函数

excel表格怎么算日期天数

mysql如何计算每个月第一天到当前日期的天数?

mysql: 如何计算指定日期到当前日期之间的天数

如何在iphone中计算当前日期的天数[关闭]