SQL PIVOT a table with no column names -
i had query returning value in list. eg:
select * some_table name in ('name1', 'name2', 'name3', 'name4', 'name5', 'name6', 'name7', 'name8', 'name9', 'name10')
i want see might not in list. eg:
select * #list name not in (select name some_table)
my list has few hundred values. how can turn list table?
select 'name1', 'name2', 'name3', 'name4', 'name5', 'name6', 'name7', 'name8', 'name9', 'name10'
into #list unpivot(?????)
create table sometable ( -- reference table name varchar(20)); insert sometable(name) values ('name1') ,('name2') ,('name3') ,('name4') ,('name5'); select t1.name (values -- list compare reference table ('name1') ,('name2') ,('name129')) t1(name) except select name sometable;
this return "name129" since value in list not in reference table. same effect can achieved not exists
or outer join.
select t1.name (values -- list compare reference table ('name1') ,('name2') ,('name129')) t1(name) left outer join sometable st on st.name = t1.name st.name null;
Comments
Post a Comment