我正在使用此查询:
Select *
From table1
Join table2 on
table2.column1
+ table2.column2
+ table2.column3
+ table2.column4
LIKE '%'
+ table1.column1
+ '%'
ORDER BY table1.column1
如何返回找到结果的列名称。例如,如果table2.column1中的单词“bob”在table2.column3中找到(将此列称为“comments”),则查询结果应为“bob”,后跟“comments”(t2.c3),之后所有其他专栏(t2.c1,t2.c2,t2.c3,t2.c4)。
答案 0 :(得分:0)
Select x.bob, y.column1, y.column2, y.column3, y.column4
From table1 x
Join table2 y on
table2.column1
+ table2.column2
+ table2.column3
+ table2.column4
LIKE '%'
+ table1.column1
+ '%'
ORDER BY table1.column1
答案 1 :(得分:0)
我不知道你要做什么,但是你可以通过这个简单的技巧获得数据所在的“列”。根据需要进行修改。
而不是select *
,列出所有结果列。然后为每个结果列添加另一个包含在isNull()中的列,以指示它来自哪个列。
Select
table2.comments,
isNull(table2.comments, null, 'comments') col1,
table2.column2,
isNull(table2.column2, null, 'column2') col1
From table1
Join table 2 on
table2.column1
+ table2.column2
+ table2.column3
+ table2.column4
LIKE '%'
+ table1.column1
+ '%'
ORDER BY table1.column1