2014-11-08 37 views
0

我有一個MySQL表,其中有多個值出現在某些行中。在下面的例子中,這些值由豎線分隔(|)。在一個字段中有多個值的MySQL表

+---------+------+ 
| cui  | type | 
+---------+------+ 
| 100  | A | 
| 101|102 | A | 
| 103  | B | 
| 104|103 | C | 
+---------+------+ 

我不知道如何檢索只有第一個值,如果存在多個值。例如,上述表格應返回爲

+---------+------+ 
| cui  | type | 
+---------+------+ 
| 100  | A | 
| 101  | A | 
| 103  | B | 
| 104  | C | 
+---------+------+ 

任何建議都非常受歡迎。

回答

1

您可以使用該功能substring_index()

mysql> select substring_index('101|102','|',1); 
+----------------------------------+ 
| substring_index('101|102','|',1) | 
+----------------------------------+ 
| 101        | 
+----------------------------------+ 

所以查詢變得

select substring_index(cui,'|',1) as cui, 
type 
from table_name 
相關問題