2016-09-22 61 views
0

我有一个名为states的表。数据是这样的:即使sql查询正确也返回空集

+----------------------+--------------------+ 
| value    | name    | 
+----------------------+--------------------+ 
| andaman-nicobar-map | Andaman-Nicobar | 
| andhra-pradesh-map | Andhra-Pradesh  | 
| arunachal-map  | Arunachal   | 
| assam-map   | Assam    | 
| bihar-map   | Bihar    | 
| chandigarh-map  | Chandigarh   | 
| chattisgarh-map  | Chattisgarh  | 
| daman-map   | Daman    | 
+----------------------+--------------------+ 

SELECT * FROM `states` WHERE `name`='Bihar'; 

但这个查询返回一个空的结果集。

+1

你能重现共享** sql小提琴**的问题吗? – 1000111

+1

'name'的类型是什么? –

回答

0

我的猜测是你在name列有空格,这就是为什么确切的比较失败。试试这个查询:

SELECT * 
FROM states 
WHERE TRIM(name) = 'Bihar' 

或本:

SELECT * 
FROM states 
WHERE name LIKE '%Bihar%' 

如果这些工作,那么你就会知道,你在name列多余的字符。

+0

谢谢蒂姆但没有运气 –

+0

然后请分享您的数据,因为它是在您的表@SwarnimGupta – 1000111

+0

以上是所有数据 –