データベースには日時(たとえば “2025-11-29 10:30:00” みたいな形式)で保存されている。
検索を日にちだけで行う場合。
public string? searchSubject(SQLiteConnection connection, string subject, string? receivedDate)
{
string query = @"
SELECT MessageId FROM ReceivedMail
WHERE Subject = @subject
AND (
@receivedDate IS NULL OR DATE(ReceivedAt) = DATE(@receivedDate)
)
LIMIT 1;
";
using (var command = new SQLiteCommand(query, connection))
{
command.Parameters.AddWithValue("@subject", subject);
if (string.IsNullOrWhiteSpace(receivedDate))
command.Parameters.AddWithValue("@receivedDate", DBNull.Value);
else
command.Parameters.AddWithValue("@receivedDate", receivedDate);
using (var reader = command.ExecuteReader())
{
if (reader.Read())
{
return reader["MessageId"].ToString();
}
}
}
return null




コメント