Question: Here is the sample
![See Sample](https://i.stack.imgur.com/VUGo3.png)

How to get this data based on day name from my table?

Answer: 
You should really fix your design. Each doctor/day tuple should be stored as a separate *row* rather than in columns.

For your current data structure, I would recommend unpivoting, then filtering:

```
select t.doctorname, v.*
from mytable t
cross apply (values 
    ('Sunday', sunday)
    ('Monday', monday)
    ...
) v(dy, val)
where v.dy = datename(weekday, getdate())

```
As mentioned by Larnu & GMB, you should consider fixing your design. For time being, you can also use Dynamic SQL.

```
DECLARE @sqlCommand VARCHAR(max);

SET @sqlCommand = 'SELECT DOCTOR_NAME FROM MY_TABLE 
                   WHERE ' + QUOTENAME(DATENAME(weekday, getdate())) + ' = 1';

EXEC (@sqlCommand)

```