>>ldDate = DATE() >>=SQLEXEC(lnHandle,"SELECT * FROM myTable WHERE dtField = ?ldDate")>>This produces no records, which is expected since I'm not accounting for the time portion of the field. But when I tried
>>=SQLEXEC(lnHandle,"SELECT * FROM myTable WHERE DATE(dtField) = ?ldDate")>>I also got no records back. When I tried
>>ldDate = DATE() >>lcDate = TRANSFORM(DTOS(ldDate),"@R 9999-99-99") >>=SQLEXEC(lnHandle,"SELECT * FROM myTable WHERE DATE(dtField) = ?lcDate")>>I got the records I wanted.
>ldStartDate = Date() >ldEndDate = date() + 1 > >=SQLEXEC(lnHandle,"SELECT * FROM myTable WHERE dtField >= ?ldStartDate and dtField < ?ldEndDate")Thanks for responding. Sorry for delayed acknowledgement.
ldDate = DATE() SQLEXEC(lnHandle,"SELECT * FROM myTable WHERE DATE(dtField) = CAST(?ldDate as date)")also works. I don't know which is the fastest expression (and don't think the difference would be at all significant) but I think this is the most clear, but that's a subjective opinion.