1
4

5 に答える 5

0
where (Table.table_who<>"aaa") OR (Format(Now()-[table_when],"hh")<12 AND Table.table_who="aaa") 

私が正しく理解していれば。aaa ではない、または aaa である場合 - >12 の場合 ?

于 2012-10-08T10:18:33.570 に答える
0

それを試してください:

   SELECT Table.table_id, Table.table_who, Table.table_whom, Table.table_when, Format(Now()-  [table_when],"hh") AS Diff
    FROM [Table]
    WHERE (((Table.table_who)<>"aaa") AND ((Format(Now()-[table_when],"hh"))<12))
    OR (((Table.table_who)="aaa") AND ((Format(Now()-[table_when],"hh"))<12))
于 2012-10-08T10:18:40.363 に答える
0

このコードを試してください:

SELECT Table.table_id, Table.table_who, Table.table_whom, Table.table_when, Format(Now()-[table_when],"hh") AS Diff
    FROM [Table]
    WHERE (Table.table_who)<>"aaa") 
    OR ((Table.table_who)="aaa") AND ((Format(Now()-[table_when],"hh"))<12) ); 
于 2012-10-08T10:18:42.057 に答える
0

あなたが定義したように条件を書くだけです:

WHERE
 (Table.table_who = 'aaa' AND Format(Now() - [table_when], 'hh') < 12) OR
 Table.table_who <> 'aaa'

括弧は場合によっては必要であり、多用すべきではありませんが、私はこのような場合、(A AND B) OR C が必要な場合に条件をグループ化するのが好きです。このように記述すれば間違いはありません。式が評価される順序について。

慣れているものによっては、別のインデントを使用すると、さらに明確になる場合があります。

WHERE
 (
    Table.table_who = 'aaa' 
    AND Format(Now() - [table_when], 'hh') < 12
 ) 
 OR Table.table_who <> 'aaa'
于 2012-10-08T10:18:46.087 に答える
0

これがあなたが望むものだと思います:

WHERE (Table.table_who = "aaa" AND Table.table_when > SUBDATE(CURDATE(), INTERVAL 12 DAY)) OR Table.table_who <> "aaa"
于 2012-10-08T10:22:32.650 に答える