[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.
Wait, should this be done by name at all?  Couldn't we be using an `AttributeMap` from Attribute->ordinal instead?