So are you saying it should look something like this?
Code:
$result = mysql_query("SELECT * FROM patterns WHERE datetxt BETWEEN CURDATE() - INTERVAL 2 WEEK AND CURDATE() ORDER BY dsptxt");
When I use that for both 2 and 3 week, it displays the same as my new this week query does.