我有一张与此类似的表
ID | InvoiceNum | Client1 | Client2 | Client3
1 123 Test2
2 1234 Abc Test1
3 12345 TestC
Run Code Online (Sandbox Code Playgroud)
我想搜索所有 3 个客户端字段并返回到单个列,其中包含它源自哪个字段的一些附加信息。
ID | InvoiceNum | Client | Position
1 123 Test2 1
2 1234 Test1 3
3 12345 TestC 2
Run Code Online (Sandbox Code Playgroud)
这是我的 SQL 查询
Select id, invnum ,Client
From myTable A
Cross Apply (values (client1) ,(client2) ,(client3) ) B(Client)
Where Client like '%test%'
ORDER BY invnum
Run Code Online (Sandbox Code Playgroud)
使用交叉应用,我可以将所有内容放入一列,但不确定是否/如何获得该职位?