select Values, REGEXP_COUNT(values,'|') from Products
样本值单元格:
Product|Cash|Loan|Customer
选择结果 27 。如果计算任何其他char它工作,但如果我想计数|它计算整个字符串。为什么,我如何计算管道?
答案 0 :(得分:4)
那是因为|
在正则表达式中有特殊含义。如果您希望将它们作为普通字符读取,则需要使用\|
来转义它们。
答案 1 :(得分:1)
要计算特定字符,您也可以使用:
SELECT col, LENGTH(col) - LENGTH(REPLACE(col, '|')) AS pipe_count
FROM tab;
<强> DBFiddle Demo 强>
输出:
┌────────────────────────────┬────────────┐
│ COL │ PIPE_COUNT │
├────────────────────────────┼────────────┤
│ Product|Cash|Loan|Customer │ 3 │
└────────────────────────────┴────────────┘