考虑一张桌子。
id count dates
1 10 2016-11-12
2 20 2016-11-12
3 20 2016-11-12
4 20 2016-11-13
5 20 2016-11-13
6 20 2016-11-14
我正在创建一个test.sql文件 其中包含
select * from table_name where dates = 2016-11-12;
如果我必须找到2016-11-13日期的行,我必须更改我的.sql文件中的条件。
我想要的是我可以在我的.sql顶部或我的文件外面声明变量名称
其中包含变量DateSelect
,我只更改了.sql中的日期和日期会自动更改。
例如。
在test.sql里面
declare DateSelect = 2016-11-12
select * from table_name where dates = DateSelect;
然后我可以将DateSelect更改为我想要的任何内容。
我遇到了这个文档,但我无法理解它,因为我是mysql的新手。Variable substitution in SQL statements 任何想法我如何实现这一点,提前谢谢
答案 0 :(得分:1)
是的,您可以将查询包装在
等存储过程中create procedure usp_sql(@datevar datetime)
as
begin
select * from table_name where dates = @datevar;
end
然后您可以将其称为
call usp_sql('2016-11-12');
根据您的最新评论,请参阅此现有帖子Pass parameter to MySQL script command line
答案 1 :(得分:0)
您可以使用 WbVar 分配来使用内部变量。您只需将值分配给所需的变量,并将该变量放入查询中。它将采用您指定的值。我希望它有所帮助。