在DATA(ONE ROW)之后寻找LIKE(' 1077%')运算符的SQL查询。
Postalcode Range_From Range_To // (columns name)
Dubai 10777 10985 // (data,table row)
结果应为(前3行)
01 - 迪拜10777
02 - 迪拜10778
03 - 迪拜10779
04 - 迪拜10780< //它不应该包含在结果中,因为它不符合标准
05 - 迪拜10781< //它不应该包含在结果中,因为它不符合标准
06 - 迪拜10782< //它不应该包含在结果中,因为它不符合标准
.........
答案 0 :(得分:0)
如果range-from不是字符串类型
select * from tableName where CAST(Range_From AS VARCHAR(10)) LIKE '1077%'
试试这个
Declare @fromRange int
Set @fromRange=10770
Declare @toRange int
Set @toRange=10780
;WITH CTE_Numbers AS (
SELECT n = @fromRange
UNION ALL
SELECT n + 1 FROM CTE_Numbers WHERE n < @toRange
)
SELECT *
FROM CTE_Numbers num where CAST(n AS VARCHAR(9)) LIKE '1077%'
MySQL的:
SET @starts = 10777-1;
SELECT @n := @n +1 AS vals
FROM mysql.help_relation , (SELECT @n:=@starts) tab where @n like '1077%' LIMIT 10 ;
答案 1 :(得分:0)
很简单。
select * from tableName where Range_From LIKE '1077%'
答案 2 :(得分:0)
select * from tableName where Range_from between 10770 and 10779
答案 3 :(得分:0)
所以你不想检索数据但是要生成它?因为你说你的表只有那一行。 所以你可以做的是,创建一个以10777开头,最大值为10779的序列 那么您可以使用序列来显示结果