SQL语句求助(最好是标准SQL,数据使用的SQL Server)
有组货位号编码类似,货位编码是按照“排列层”的顺序写的01-01-01,01-01-02,01-02-01,01-02-02,01-03-01,01-03-01,01-0...
有组 货位号编码类似 ,货位编码是按照 “排列层”的顺序写的
01-01-01, 01-01-02,
01-02-01, 01-02-02,
01-03-01, 01-03-01,
01-04-01, 01-04-02,
01-05-01, 01-05-02,
01-42-01,01-42-02
**************
02-01-01,02 -01-02,
02-02-01, 02-02-02,
02-03-01, 02-03-01,
02-04-01, 02-04-02,
02-05-01, 02-05-02,
********
02-42-01,02-42-02
我现在先要一个SQL,搜索出空货位(有一个标志位标示)按照先第一层第一排第一列开始搜索出第一符合条件的值(看标示位)给我,如果不符合条件就搜索下一个(第一层第二排的两列)
,按照的顺序就是从第一层,搜索列(一列有两排,分别判断标示位,如果都不符合,搜索下一列的两排)。
谢谢。
一共就两排 ,先不考虑层 ,两排分别分货,按照列进行 展开
01-01-01, 01-01-02,
01-02-01, 01-02-02,
01-03-01, 01-03-01,
01-04-01, 01-04-02,
01-05-01, 01-05-02,
01-42-01,01-42-02
**************
02-01-01,02 -01-02,
02-02-01, 02-02-02,
02-03-01, 02-03-01,
02-04-01, 02-04-02,
02-05-01, 02-05-02,
********
02-42-01,02-42-02
我现在先要一个SQL,搜索出空货位(有一个标志位标示)按照先第一层第一排第一列开始搜索出第一符合条件的值(看标示位)给我,如果不符合条件就搜索下一个(第一层第二排的两列)
,按照的顺序就是从第一层,搜索列(一列有两排,分别判断标示位,如果都不符合,搜索下一列的两排)。
谢谢。
一共就两排 ,先不考虑层 ,两排分别分货,按照列进行 展开
3个回答
展开全部
01-01-01 就是 第1排 第1列 第1层
01-01-02 就是 第1排 第1列 第2层
..
01-42-02 就是 第1排 第42列 第2层
要先 层,后 排, 后列
这个直接 SUBSTRING , 把 1列分拆成 3列, 然后进行排序就好。
SQL 也简单。
SELECT TOP 1 -- 取得 第一条 满足条件的记录
*
FROM
货位表
WHERE
空货位 满足条件
ORDER BY
SUBSTRING(货位编码, 1, 2), -- 排
SUBSTRING(货位编码, 4, 2), -- 列
SUBSTRING(货位编码, 7, 2) -- 层
01-01-02 就是 第1排 第1列 第2层
..
01-42-02 就是 第1排 第42列 第2层
要先 层,后 排, 后列
这个直接 SUBSTRING , 把 1列分拆成 3列, 然后进行排序就好。
SQL 也简单。
SELECT TOP 1 -- 取得 第一条 满足条件的记录
*
FROM
货位表
WHERE
空货位 满足条件
ORDER BY
SUBSTRING(货位编码, 1, 2), -- 排
SUBSTRING(货位编码, 4, 2), -- 列
SUBSTRING(货位编码, 7, 2) -- 层
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询