刚才写的这个试图“2023-06-09”作为参数传入SQL语句,mybatis的xml文件应该怎么调用
时间: 2024-03-19 11:43:41 浏览: 16
在 MyBatis 的 XML 文件中,可以通过以下方式使用传入的参数:
1. 在Mapper接口中定义方法并声明参数:
```
public interface FeedbackMapper {
List<Feedback> getFeedbackList(@Param("date") String date);
}
```
2. 在 XML 文件中使用 #{paramName} 占位符引用参数:
```
<select id="getFeedbackList" resultType="Feedback">
SELECT A.office_id AS distributorId,
A.customer_code AS customerCode,
A.erp_name AS customerName,
A.total_amount AS totalAmount,
A.trade_date AS tradeDate,
A.customer_type AS customerType,
"初次" AS is_first_deal
FROM t_first_feedback A
WHERE A.`status` = '已成交'
AND A.trade_date IS NOT NULL
AND A.trade_date >= DATE_FORMAT(DATE_SUB(#{date}, INTERVAL 1 MONTH), '%Y-%m-01')
AND A.trade_date <= LAST_DAY(DATE_SUB(#{date}, INTERVAL 1 MONTH))
UNION ALL
SELECT B.office_id AS distributorId,
B.customer_number AS customerCode,
B.customer_name AS customerName,
B.total_amount AS totalAmount,
B.transaction_date AS tradeDate,
"" AS customerType,
"重复" AS is_first_deal
FROM t_repeat_feedback B
WHERE B.transaction_date IS NOT NULL
AND B.transaction_date >= DATE_FORMAT(DATE_SUB(#{date}, INTERVAL 1 MONTH), '%Y-%m-01')
AND B.transaction_date <= LAST_DAY(DATE_SUB(#{date}, INTERVAL 1 MONTH));
</select>
```
3. 在调用Mapper接口的地方传入参数:
```
@Autowired
private FeedbackMapper feedbackMapper;
public List<Feedback> getFeedbackList(String date) {
return feedbackMapper.getFeedbackList(date);
}
```
这样,在调用 getFeedbackList 方法时,传入的参数 date 就会被传递到 SQL 语句中。