我正在尝试进行查询,显示当天和前一天的记录,但如果是星期一,则显示整个周末以及当天的记录。
逻辑有效,但我不能让日期范围有效。我可以获得单一的工作日期。
IIf(Weekday(Date())=2,Date()-2,Date())
如果我尝试用这样的范围替换单个日期:
IIf(Weekday(Date())=2,Between Date()-2 And Date(),Between Date()-1 And Date())
Access尝试附加此查询引用的表中的标签,如此。这会导致查询结果为空。
IIf(Weekday(Date())=2,([Table].[Reported Date]) Between Date()-2 And Date(),([Table].[Reported Date]) Between Date()-1 And Date())
我是Access的新手,所以我不太明白发生了什么以及为什么要尝试添加这些标签。
如果我的方法不对,请告诉我。
答案 0 :(得分:0)
<value> between <lower bound> and <upper bound>
的语法是:
Between Date()-2 And Date()
所以这不是一个有效的表达式:
YourColumn between Date()-2 and Date()
尝试类似:
between
或者,没有Date()-2 <= YourColumn and YourColumn <= Date()
:
void printGivenLevel(struct node* root, int level){
if(root == NULL)
return;
if(level == 1)
printf("%d ", root->data);
else if (level > 1)
{
printGivenLevel(root->left, level-1);
printGivenLevel(root->right, level-1);
}
}
答案 1 :(得分:0)
您可以使用DATEPART()来获取星期几。例如 - 星期一被认为是2。
DatePart函数使用1-7,星期日为1.
离。
声明你的变量并使用DATEPART(w,GETDATE())。
一旦你有了这个,你可以使用你的条件:
var allCatsResult = [{"id":1},{"id":2}, {"id":3}, ... ];
var catsArray = [1, 2] // Array of ids from allCatsResult
var result = [
{"id":1, selectedCategories:[{"id":1},{"id":2}]},
{"id":2, selectedCategories:[{"id":4},{"id":5}]},
...
];
for (var i = 0; i < results.length; i++) {
var tmp = allCatsResult; // tried to add function form here didn't work
for (var k = 0; k < results[i].selectedCategories.length; k++) {
var index = catsArray.indexOf(results[i].selectedCategories[k].category_id);
if(index !== -1) {
tmp[index].ticked = true;
}
}
results[i].categories = tmp;
}