我需要在存储过程中使用。这是我的代码
ALTER PROCEDURE sp_tb_sales_entry_total_product_where_date
@to_date varchar(15),
@from_date varchar(15)
AS
BEGIN
SELECT *
FROM tb_sales_entry_total_product
WHERE [Sales Date] BETWEEN @from_date AND @to_date
END
如果我传入值01-12-2013
和10-01-2014
(在我的表中,数据也采用相同的格式),则不会返回我期望的行。
如果我传入值01-01-2014
和10-01-2014
,则会返回我期望的行。
答案 0 :(得分:5)
如果您传递日期,则传递date
:
ALTER PROCEDURE sp_tb_sales_entry_total_product_where_date
@to_date date,
@from_date date
AS
BEGIN
SELECT *
FROM tb_sales_entry_total_product
WHERE [Sales Date] BETWEEN @from_date AND @to_date
END;
转换到调用存储过程的日期。