SELECT
UUID,
gps,
times,
(
6371000.393 * acos (
cos ( radians(34.246876) )
* cos( radians( SUBSTRING_INDEX(gps,',',-1) ) )
* cos( radians( SUBSTRING_INDEX(gps,',',1) ) - radians(108.965422) )
+ sin ( radians(34.246876) )
* sin( radians( SUBSTRING_INDEX(gps,',',-1) ) )
)
) AS distance
FROM
( SELECT * FROM emerg_emergdisposal_call WHERE times BETWEEN date_sub( NOW( ), INTERVAL '00:00:20' DAY_SECOND ) AND NOW( ) ) t
GROUP BY
t.UUID
HAVING distance <=500;
最后一行 HAVING distance <=500;
<= 不能直接卸载mybaits中,因为<>在xml语言有作用,所以会和<>冲突,其他类似的冲突还有↓
| < | <= | > | >= | & | ' | " |
解决方案
MyBatis的转义
mybatis 中 SQL 写在mapper.xml文件中,而xml解析 < 、>、<=、>= 时会出错,这时应该使用转义写法。有两种解决方案:
方案
| < | <= | > | >= | & | ' | " |
| < | <= | > | >= | & | ' | " |
这篇博客讨论了在MyBatis中遇到的SQL特殊字符问题,特别是如何解决小于号(<)和大于号(>)与XML解析冲突的问题。文章详细解释了使用转义符号来正确书写SQL条件,例如使用`&lt;`和`&gt;`来替代`<`和`>`。同时,还展示了如何在SQL查询中进行距离计算,用于定位距离特定坐标点500米内的记录。

869

被折叠的 条评论
为什么被折叠?



