如何使用sql来对CSV操作

J2EE 码拜 6年前 (2015-04-10) 706次浏览 0个评论

现在找到了使用csvjdbc对csv文件进行操作,但是有个问题就是csvjdbc对字段的大小比较是按照字符串比较的,比如有12 13 111三个数据,选择大于12的只会把13选出来,而111不会。

求教!

如何使用sql来对CSV操作
顶一下顶一下
如何使用sql来对CSV操作
5分
没用过,随便说下想法,不知道有没有办法按数字比较,如果没有的话可以变通一下,比如你举得例子,那可以先把大于两位的选出来,再把剩下的两位的跟你的12比,不知道能满足你的要求么
如何使用sql来对CSV操作
转换成数字再比较?
如何使用sql来对CSV操作
引用 2 楼 yyy269954107 的回复:

没用过,随便说下想法,不知道有没有办法按数字比较,如果没有的话可以变通一下,比如你举得例子,那可以先把大于两位的选出来,再把剩下的两位的跟你的12比,不知道能满足你的要求么

这个包是直接用sql实现尚筛选的,sql里面没办法实现这个复杂的比较吧

如何使用sql来对CSV操作
引用 3 楼 u012047741 的回复:

转换成数字再比较?

这个包是直接用sql实现尚筛选的,sql里面怎么指定一个字段用数字大小比较呢

如何使用sql来对CSV操作
5分
引用 5 楼 QQ297095637 的回复:
Quote: 引用 3 楼 u012047741 的回复:

转换成数字再比较?

这个包是直接用sql实现尚筛选的,sql里面怎么指定一个字段用数字大小比较呢

有把字符串转数字的函数,你可以查下

如何使用sql来对CSV操作
10分
to_num之后再比较,
当成字符串去比较12当然要比111大了。
如何使用sql来对CSV操作
引用 6 楼 u012047741 的回复:
Quote: 引用 5 楼 QQ297095637 的回复:
Quote: 引用 3 楼 u012047741 的回复:

转换成数字再比较?

这个包是直接用sql实现尚筛选的,sql里面怎么指定一个字段用数字大小比较呢

有把字符串转数字的函数,你可以查下

mysql是有的,叫做cast()
但是csvjdbc好像没有那么强大

如何使用sql来对CSV操作
引用 7 楼 sositesine 的回复:

to_num之后再比较,
当成字符串去比较12当然要比111大了。

csvjdbc好像没有这个函数?

如何使用sql来对CSV操作
15分
用 ODBC-JDBC 桥接驱动结合 ODBC 数据源配置成 Float 或 Integer 或 Long 数字列的话,应该行吧。
如何使用sql来对CSV操作
引用 10 楼 humanity 的回复:

用 ODBC-JDBC 桥接驱动结合 ODBC 数据源配置成 Float 或 Integer 或 Long 数字列的话,应该行吧。

 嗯嗯,这个办法在win下车时可行,linux下同样需要配置txt的驱动,测试可行

如何使用sql来对CSV操作
5分
使用linq可以自定义顺序等….

CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明如何使用sql来对CSV操作
喜欢 (0)
[1034331897@qq.com]
分享 (0)

文章评论已关闭!