我的最终结果是多名员工的报告,其中包括在日期范围内工作的天数。在我的报告中,我需要在报告的范围内显示该员工是否工作的所有日期。
所以我有一张桌子,上面有每个工作日期和每个小时的工作时间。我还创建了一个日期遥远的表格。我想我需要一个连接两个表的查询,并将日期范围的所有日期 - 将被提示。添加到员工工作时间表中。
有没有人有任何想法如何加入这些表格,并在两周内获得每位员工的所有日期?
第一个表日期只有1列,其中包含未来的日期。
第二个表有Empl名称,工作日期和工作小时数。
答案 0 :(得分:0)
您需要使用嵌套查询(也称为子查询)来创建员工和日历日的所有组合,然后您可以向左侧第二个表(时间表表)。
public static void AppendInvariant(this StringBuilder builder, int value)
{
// Deal with negative numbers
if (value < 0)
{
builder.Append('-');
uint uint_value = uint.MaxValue - ((uint)value) + 1; //< This is to deal with Int32.MinValue
AppendInvariant(builder, uint_value);
}
else
{
AppendInvariant(builder, (uint)value);
}
}
public static void AppendInvariant(this StringBuilder builder, uint value)
{
if (value == 0)
{
builder.Append('0');
return;
}
// Pad out space for writing.
int length = UintLength(value);
builder.Append('0', length);
length = builder.Length;
uint tmp_value;
do
{
tmp_value = value;
value /= 10;
builder[--length] = (char)('0' + (tmp_value - value * 10));
} while (value > 0);
}
private static int UintLength(uint i)
{
if (i < 100000)
{
if (i < 10) return 1;
if (i < 100) return 2;
if (i < 1000) return 3;
if (i < 10000) return 4;
return 5;
}
else
{
if (i < 1000000) return 6;
if (i < 10000000) return 7;
if (i < 100000000) return 8;
if (i < 1000000000) return 9;
return 10;
}
}