跳到正文

列表格式转换

List Formatter

把多行文本转成逗号列表、带引号的 SQL IN 子句、JSON 数组或项目符号列表,也能反着来。

把一列值变成 SQL IN 子句、JSON 数组、带引号的列表或项目列表——也能把这些拆回一行一个。要紧的是撇号的处理:O’Brien 变成 ’O’’Brien’,这是 SQL 标准自己的转义方式。

🔒 完全在你的浏览器里运行listformatjoinsql

输入

方向

格式

值里面的单引号会写成两个——O'Brien 变成 'O''Brien'——这是 SQL 标准自己的转义方式。反斜杠转义只有 MySQL 认,生成出来的 IN 子句多半就是这样坏掉的。

结果

值的个数

4

输出字符数

42

怎么用

  1. 选方向

    行变列表,或列表变回行。第二个方向能读 JSON 数组、SQL IN 子句、带引号的列表或分隔列表,并说明它判断成了哪一种。

  2. 选输出形状

    列表用例子展示每种格式——a,b 或 "a", "b"——你看样子选而不是看名字选。自定义让你自己设前缀、后缀和分隔符。

  3. 检查计数

    值的数量是校验。比预期少一个,说明一个空行被丢掉了,或者一个带引号的值吞掉了一个逗号。

常见问题

撇号为什么写成两个?

因为 SQL 就是这样转义的——’O’’Brien’ 是标准写法,在每一种数据库里都能用。反斜杠转义只在 MySQL 里有效,用了它,生成的 IN 子句在别处出错是常事。

一个含逗号的值被拆成了两个

只在它没加引号时才会。读回列表时,带引号的值保留逗号:a, "b, c" 是两个值,不是三个。在源里给值加引号,它就完整。

值的数量有上限吗?

这里没有,但你要粘贴去的地方有。Oracle 把 IN 列表限制在 1,000 项,其他数据库也各有上限;超过几百个,临时表或 join 本来就是更好的形状。

可以从这些接进来

接下来

这些工具吃得下当前工具的产出,结果可以直接送过去。