我正在使用VB6并访问。然后我有一个像这样的表MAYOR:
Codigo Titulo
--------- ----------------
600 Cuenta 600
60000000 Cuenta 60000000
610 Cuenta 610
6100 Cuenta 6100
6101 Cuenta 6101
61010000 Cuenta 61010000
61010001 Cuenta 61010001
61010002 Cuenta 61010002
6102 Cuenta 6102
61020000 Cuenta 61020000
61030000 Cuenta 61030000
61040000 Cuenta 61040000
我需要选择Codigo的长度。当我选择lenght = 2然后我需要注册 60和61。 当选择lenght = 3时,我需要600和610 当我选择lenght = 5时,我需要60000,61010,61020,61030和61040。
我使用这个SQL:
SELECT DISTINCTROW MID(CODIGO,1,4) AS CODIGOB,TITULO
FROM MAYOR
WHERE LEN(CODIGO)>=4
ORDER BY CODIGO
但我有codigo = 6000,6100,6101,6101,6101,6101,6102,6102,6103,6104,我不需要重复。
请提出任何建议。
由于
答案 0 :(得分:0)
您的规范说
我需要选择Codigo的长度
但您的查询是按WHERE LEN(CODIGO)>=4
请尝试使用DISTINCT
并匹配ORDER BY子句,如下所示:
SELECT DISTINCT MID(CODIGO, 1, 4) AS CODIGOB, TITULO
FROM MAYOR
WHERE LEN(CODIGO) = 4
ORDER BY MID(CODIGO, 1, 4)