将命令行参数传递给类似%语句的mysql查询

时间:2014-12-03 11:30:55

标签: mysql batch-file select sql-like

我正在尝试执行以下.bat过程,例如传递它“碳粉”一词:

@echo off
@echo use tax; select id,date,account,supplier,item,price from booking where ite
m like '%%1%' >tempquery.sql
"c:\\Program Files\\MySQL\\MySQL Server 5.1\\bin\\mysql.exe" <tempquery.sql

不知怎的,我无法将LIKE'%Toner%'参数作为参数正确传递。

3 个答案:

答案 0 :(得分:0)

要使用%打印echo字符,您必须将其放入两次:

@echo use tax; select id,date,account,supplier,item,price from booking where ite
m like '%%%1%%' >tempquery.sql

答案 1 :(得分:0)

啊,我相信我明白了。必须使用%%:

select id,date,account,supplier,item,price from booking where item like '%%%1%%' 

答案 2 :(得分:0)

您可以使用concat()

where item like concat('%%', '%1', '%%')

或者,完全跳过like

where instr(item, '%1') > 0