数据库操作,如何在多个不同的库里筛选数据

2025 年 6 月 11 日
 zjstar
最近经常有这个操作,比如在 mysql 的 a 库的表里查出几十个用户名,然后去 oracle 的 b 库的一个表里去搜这些用户名数据,这种跨库的,不知道大家怎么操作的,被逼的没办法了,写了个小工具,把查出的数据,拼接起来,然后去 b 库里去查。
比如我查出数据,复制出来是:
111
222
333
然后我想去 b 库的表里查,那我 sql 应该是 select * from b where name in ('111','222','333')

就是把
111
222
333
转化成 '111','222','333'

写了个工具就是做了这个转换,大家有同样需求的可以拿来用,或者大家有没有别的办法来解决这个问题
https://www.joinlines.org/
3230 次点击
所在节点    数据库
22 条回复
MoYi123
2025 年 6 月 11 日
用 duckdb 就可以 https://duckdb.org/docs/stable/data/data_sources
配置一下 datasource
zjstar
2025 年 6 月 11 日
@MoYi123 感谢,我去研究下
starlion
2025 年 6 月 11 日
你这是啥子业务系统,用了不同的数据库系统
数据量是多少啊,
sujin190
2025 年 6 月 11 日
https://github.com/snower/syncany-sql

那分享下吧,支持用 mysql 语法联表查询,跨库跨机器跨不同类型数据库都可以,比如 mysql 和 mongo ,以及 mysql 和普通 json 、ecxel 等文件 join 查询,还能导入 python 自定义函数用于计算,自行编写聚合函数等等

https://github.com/snower/syncany-server

还有个 server 封装了 mysql server 的接口,可以用支持 mysql driver 的程序调用
CEBBCAT
2025 年 6 月 12 日
$ echo -e 'apple\nbanana\ncherry' | awk '{printf("\"%s\"\n", $0)}' | tr \n ,

🤔

SELECT GROUP_CONCAT(name) FROM table

🤔
---
可以把数据都收集在一起,用中间件做连接也行。有的时候不是办法想不到,只是做事有障碍,加油
xjzshttps
2025 年 6 月 12 日
不做参数化查询,那么爱要小心 sql 注入
VeryZero
2025 年 6 月 12 日
冷知识,datagrip 选择数据后直接复制粘贴就可以有这样的效果,甚至可以自定义脚本
penisulaS
2025 年 6 月 12 日
我的主数据库是 pg ,支持外源表( fdw ),可以直连 mysql ,用 sql 直接操作
spritecn
2025 年 6 月 12 日
很久之前,我也写过一个...基本和你这个一毛一样
spritecn
2025 年 6 月 12 日
@spritecn 我主要用是来拼 inset 的,偶尔拼一些查询
ldyisbest
2025 年 6 月 12 日



直接这样就能替换了
zjstar
2025 年 6 月 12 日
@starlion 在客户那边对接不同的厂家,不同厂家用不同的数据库,我们的系统的数据来源,依赖于他们不同的厂家 o(╥﹏╥)o
zjstar
2025 年 6 月 12 日
@sujin190 感谢,就是我需要的哈哈
zjstar
2025 年 6 月 12 日
@spritecn 查询我也有需求,不过懒得写工具了,很多直接让 ai 给我拼了
zjstar
2025 年 6 月 12 日
@ldyisbest 这个图是啥工具啊
ldyisbest
2025 年 6 月 12 日
@zjstar #15 高级一点的文本编辑器都行,比如 vscode ,我这个用的是 sublime
spritecn
2025 年 6 月 13 日
@ldyisbest 快捷键学习成本高..不直观
ldyisbest
2025 年 6 月 13 日
@spritecn #17 哪里有什么快捷键,这是个全局替换的输入,写过代码多少都用过几次,你要说正则学习成本高那还说得过去,但这玩意用两次不就记住了,懒的话那没办法
sivacohan
2025 年 6 月 13 日
你这个是典型的外表需求,oracle 我听说有这方面的支持。

如果 oracle 没有或者没开放外表,那你不妨在本地启动一个 postgresql ,然后用 fdw 把外部数据都挂进 pg ,统一在 pg 里面进行查询。
nooneanyone
2025 年 6 月 13 日
搞个能支持多协议 source 的数据库,把你的所有库都作为 source 连进来。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://v2ex.ih06.com/t/1138017

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX