SELECT
libary.MediaId,
library.Title,
library.`date-downloaded`,
library.Author,
library.`language`,
library.asseturl,
library.`recycle-bin`,
library.`key-asset`,
SUBSTRING_INDEX(SUBSTRING_INDEX(`category`, ',', n.digit+1), ',', -1) categoryname,
library.`tax-other`,
library.`sales-stage`
FROM
library
INNER JOIN
(SELECT 0 digit UNION ALL SELECT 1 UNION ALL SELECT 2 UNION ALL SELECT 3 UNION ALL SELECT 4 UNION ALL SELECT 5 UNION ALL SELECT 6 UNION ALL SELECT 7 UNION ALL SELECT 8 UNION ALL SELECT 9 UNION ALL SELECT 10) n
ON LENGTH(REPLACE(`category`, ',' , '')) <= LENGTH(`category`)-n.digit
ORDER BY
`MediaId`,
n.digit我有一个工作查询,它接受一个逗号分隔的列,名为分类,并将其分解,因此该列中的每个选择都有一个匹配行。那部分效果很好。然而,在运行查询时,我会在一些“类别名称”S前面得到空格,因为其中一些名称在前面没有任何内容,而其他名称则有空白,这似乎不太一致。
发布于 2022-11-02 05:36:54
为什么会有n表呢?给定行的值如下所示
LENGTH(category) - LENGTH(REPLACE(...))所以:
SELECT ......,
LENGTH(category) - LENGTH(REPLACE(...)) AS ct
FROM library
ORDER BY MediaId, cthttps://dba.stackexchange.com/questions/319069
复制相似问题