Want to protect your cyber security and still get fast solutions? Ask a secure question today.Go Premium

x
?
Solved

How do I return records from a date range with SQL syntax?

Posted on 2007-12-04
6
Medium Priority
?
553 Views
Last Modified: 2010-05-18
I have an SQL table of records from 2006-2007 and I want to select a range of records based upon start and stop dates entered into text boxes.

I'm using Visual Web Developer; SQL Express; Express Management Studio; VB backcoding

Here's my statement:

SELECT [ID], [BILLNUMBER], [CHARGEDATE], [LNAME], [FNAME] FROM [TABLETracking] WHERE (([CHARGEDATE] IS NOT NULL) AND ([CHARGEDATE] >= @CHARGEDATE) AND ([CHARGEDATE] <= @CHARGEDATE2) AND ([7CAT] = @7CAT))


So, the @CHARGEDATE and @CHARGEDATE2 values are coming from textbox dates that are entered. @7CAT is a value from a user-select dropdown list.

However, a start and stop date such as 01/01/2007 to 12/31/2007 will also return records from the year 2006 (arrrghhhh!...frustrating). How can I make this work? I know there is a BETWEEN statement that can be used, but I am unable to get anything to work..... maybe my parentheses are not structured correctly. Thanks for any assistance.
0
Comment
Question by:jazjef
  • 3
  • 2
6 Comments
 
LVL 3

Expert Comment

by:cforant
ID: 20406280
SELECT column_name FROM table_name
WHERE column_name
BETWEEN value1 AND value2
0
 
LVL 23

Accepted Solution

by:
Ashish Patel earned 2000 total points
ID: 20406447
Try this.
SELECT [ID], [BILLNUMBER], [CHARGEDATE], [LNAME], [FNAME] FROM [TABLETracking] WHERE [CHARGEDATE] IS NOT NULL AND [CHARGEDATE] BETWEEN @CHARGEDATE AND @CHARGEDATE2 AND [7CAT] = @7CAT

0
 
LVL 4

Author Comment

by:jazjef
ID: 20406575
asvforce:

thanks for the reply... your statement works fine, but I still get records from 2006 when I use it.
0
Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
LVL 23

Expert Comment

by:Ashish Patel
ID: 20406617
What is the column type of CHARGEDATE column?
0
 
LVL 4

Author Comment

by:jazjef
ID: 20406853
ASVFORCE:

column type was char(10)

this was causing the problem.... when I converted to datetime your solution works.... and so does my own original solution prior to asking the question.... thanks.

I have another problem though.... I will post a question on it momentarily. It's related to this datetime thing...
0
 
LVL 23

Expert Comment

by:Ashish Patel
ID: 20406865
Good catch!!! Glad to hear that you have solved this now.
0

Featured Post

What does it mean to be "Always On"?

Is your cloud always on? With an Always On cloud you won't have to worry about downtime for maintenance or software application code updates, ensuring that your bottom line isn't affected.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

International Data Corporation (IDC) prognosticates that before the current the year gets over disbursing on IT framework products to be sent in cloud environs will be $37.1B.
This month, Experts Exchange sat down with resident SQL expert, Jim Horn, for an in-depth look into the makings of a successful career in SQL.
Whether it be Exchange Server Crash Issues, Dirty Shutdown Errors or Failed to mount error, Stellar Phoenix Mailbox Exchange Recovery has always got your back. With the help of its easy to understand user interface and 3 simple steps recovery proced…
With just a little bit of  SQL and VBA, many doors open to cool things like synchronize a list box to display data relevant to other information on a form.  If you have never written code or looked at an SQL statement before, no problem! ...  give i…

564 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question