MySQL选择使用alpha通配符不起作用

时间:2015-05-29 16:03:17

标签: mysql select wildcard

我有一个包含char(12)行的单列的简单表格,如:

DRF4482   
DRF4497   
DRF451  
DRF4515  
EHF452  
FJF453  
GKF4573

我想选择DF之间的所有行,并在结尾处有4个数字。与DRF4482DRF4497DRF4515等一样,我尝试了许多不同的通配符组合,但我没有获得任何行。我正在使用:

SELECT * FROM `expired` WHERE id like '%[D-F][A-Z][A-Z]____';

我甚至试图将其扩大到:

SELECT * FROM `expired` WHERE id like '%[D-F]%';

并且也不会返回任何内容。

我甚至根据其他一些帖子尝试了COLLATE latin1_bin,但这也没有用。我的表格为utf8,但我创建了第二个表格latin1并尝试了几个不同的排序规则,结果相同 - 没有行。

我的错误在哪里?

1 个答案:

答案 0 :(得分:2)

您需要使用REGEXP代替<DataTemplate x:Key="InformationMessageTemplate"> <ViewCell> <ViewCell.View> <StackLayout Orientation="Horizontal" BackgroundColor="#FFFFFF" HorizontalOptions="FillAndExpand"> <Label FontAttributes="Bold" Text="{Binding Sender}" /> <Label Text=" chegou na sala" HorizontalOptions="FillAndExpand"/> </StackLayout> </ViewCell.View> </ViewCell> </DataTemplate> 。请注意,语法略有不同;它不会对SQLish LIKE通配符执行任何操作。

所以,你想要

%

这个应用程序。希望您在这些字符串中没有多字节字符,因为MySQL的正则表达式在这些情况下无法正常工作。