[Spark-4041][SQL]attributes names in table scan should converted to lowercase when compare with relation attributes


In ```MetastoreRelation``` the attributes name is lowercase because of hive using lowercase for fields name, so we should convert attributes name in table scan lowercase in ```indexWhere(_.name == a.name)```.  
```neededColumnIDs``` may be not correct if not convert to lowercase.
Nit: it would be safer if you use `_.name.toLowerCase == a.name.toLowerCase`.