德比中复杂的LIKE表达式(Java DB)

时间:2011-07-04 14:20:32

标签: java derby

我有一个带ID的表,Name都是ID类型的字符串类型,如

1.3.6.1, 
1.3.6.2, 
1.3.6.1.2, 
1.3.6.1.3, 
1.3.6.1.4, 
1.3.6.2.1.
1.3.7.2,
1.3.7.5,
1.3.8.1,

etc

我需要检索像1.3.6这样的记录。 ..但不像1.3.6.ANY_NUMBER。 .., 你可以帮我写一个Derby查询吗

提前致谢 汉克斯

3 个答案:

答案 0 :(得分:3)

也许你最好不要使用LIKE,而是使用简单的等于

SELECT * FROM db WHERE id='1.3.6';

答案 1 :(得分:2)

你自己写了答案

WHERE id LIKE '1.3.6%' AND id NOT LIKE '1.3.6.1%'

答案 2 :(得分:0)

使用此选项从[column_name]中选择数据,格式最多为3个点(如1,1.1,1.1.1但从不1.1.1.1)

SELECT SUBSTRING_INDEX([column_name],".",3) FROM [table_name];

用它来选择[column_name]不超过5个字符(1,1.1,1.1.1但从不1.1.1.1)的行

SELECT [column_name] FROM [table_name] WHERE CHAR_LENGTH([column_name]) < 6