sql server - mssql - retrieve unique values of a column based on another column -


i have table 2 columns: columna, columnb, rows:

| | 1 |
| b | 1 |
| b | 2 |
| c | 1 |
| c | 1 |
| c | 1 |
| | 2 |
| b | 1 |
| | 2 |
| | 1 |

i write query return unique values columnb, each unique value of columna, columna has more 1 value in columnb i.e.

| | 1 |
| | 2 |
| b | 1 |
| b | 2 |

c 1 should omitted because there 1 distinct value columna = 'c'

there might simpler approach works:

select t.columna, t2.columnb ( select columna         dbo.tablename t         group t.columna        having count(distinct t.columnb) > 1) t cross apply ( select distinct t2.columnb                dbo.tablename t2                t.columna=t2.columna ) t2 

the first subquery returns unique columna values have multiple (different) columnb values. 2nd subquery returns distinct columnb values of columna-values cross apply.


Comments

Popular posts from this blog

angular - Ionic slides - dynamically add slides before and after -

minify - Minimizing css files -

Add a dynamic header in angular 2 http provider -