提问人:Ruan du Preez 提问时间:11/15/2023 最后编辑:Ruan du Preez 更新时间:11/15/2023 访问量:51
链接单列中的多个值 [duplicate]
Link Multiple values in Single Column [duplicate]
问:
日安
我有一个包含我所有数据的表格。在列产品中,有链接到索引表的值,但不是单个值,而是多个值,即 900;190;170.如果它是一个值,我只会在列产品上的两个表之间使用左连接。有没有办法将其与多个值联系起来?900 = 其他,190 = 书籍,170 = 钢笔。另一个问题是,它可以是 Product 列中任意数量的值。
谢谢 阮
答:
0赞
Jophy job
11/15/2023
#1
-- create a table
CREATE TABLE products (
id INTEGER PRIMARY KEY,
name varchar(20) NOT NULL
);
CREATE TABLE productsIndex (
indexName varchar(120) NOT NULL,
itemIndex varchar(20) NOT NULL
);
-- insert some values
INSERT INTO products VALUES (900, 'Books');
INSERT INTO products VALUES (800, 'Other');
INSERT INTO products VALUES (190, 'Pen');
-- insert some values
INSERT INTO productsIndex VALUES ('900;190;170', 'test');
INSERT INTO productsIndex VALUES ('800;100', 'test2');
SELECT p.* ,pi.itemIndex
FROM products p
join productsIndex pi
on p.id in (SELECT value FROM STRING_SPLIT(pi.indexName, ';'))
评论
0赞
GuidoG
11/15/2023
OP在评论中提到他正在使用sql server 2008,不幸的是,它还没有string_split功能
评论