I need to : select distinct * from my_table; it's not working.
What is alternative to this query? I can't use column_names in place of * because there are hundreds of columns in my table.
Thanks IT sajha Experts for ur answer.
use dynamic query to get list of columns and concatenate select distinct keyword with it and run that dynamic query
Thanks sajhamitra. But how to concatenate :
i) select column_name from all_tab_columns where upper(table_name)='EMP';
with
select distinct * from EMP.
I mean ,how to concatenate select distinct keyword with the dynamic query to list columns?
SELECT DISTINCTcolumn_name,column_name
FROM table_name;
SELECT * From table_name;
Please understand (*) will return everything, hence DISTINCT *(everything) is a wrong sql statement.
DISTINCT specifically looks for unique result set,,The DISTINCT keyword can be used to return only distinct (different) values
WakkaDikka Mitra, I do understand your explanation but i want the unique records in a table having more than 100 columns. I can't list all the column names after distinct keyword.
If your table has a PK all rows should be distinct by definition. If you are trying to just select DISTINCT field but somehow return all other columns what should happen for those columns that have more than one value for a particular field value? so You would need to use GROUP BY and some sort of aggregation on the other columns.
select * from table group by column name.
try this
select distinct a.* from my_table a;
Thanks Kunthaun; it worked.
Please log in to reply to this post
You can also log in using your Facebook