Sql 如何在MS Access中将是/否字段显示为值?
我是SQL新手,很难查询下表 像这样的事情Sql 如何在MS Access中将是/否字段显示为值?,sql,ms-access,Sql,Ms Access,我是SQL新手,很难查询下表 像这样的事情 我知道这里牵涉到工会,但我似乎无法让这一切顺利进行。请帮助您可以尝试以下方法: SELECT RESP_ID, RESP_LVL FROM ( SELECT RESP_ID, 1 AS RESP_LVL FROM yourTable WHERE LEVEL1 = 'Y' UNION ALL SELECT RESP_ID, 2 AS RESP_LVL FROM yourTable WHERE LEVEL2 = 'Y'
我知道这里牵涉到工会,但我似乎无法让这一切顺利进行。请帮助您可以尝试以下方法:
SELECT
RESP_ID,
RESP_LVL
FROM
(
SELECT RESP_ID, 1 AS RESP_LVL FROM yourTable WHERE LEVEL1 = 'Y' UNION ALL
SELECT RESP_ID, 2 AS RESP_LVL FROM yourTable WHERE LEVEL2 = 'Y' UNION ALL
SELECT RESP_ID, 3 AS RESP_LVL FROM yourTable WHERE LEVEL3 = 'Y' UNION ALL
SELECT RESP_ID, 4 AS RESP_LVL FROM yourTable WHERE LEVEL4 = 'Y' UNION ALL
SELECT RESP_ID, 5 AS RESP_LVL FROM yourTable WHERE LEVEL5 = 'Y' UNION ALL
SELECT RESP_ID, 6 AS RESP_LVL FROM yourTable WHERE LEVEL6 = 'Y' UNION ALL
SELECT RESP_ID, 7 AS RESP_LVL FROM yourTable WHERE LEVEL7 = 'Y'
) t
ORDER BY
RESP_ID,
RESP_LVL;
这里我假设您的复选框由
CHAR(1)
字段支持,该字段的值为Y
或N
。如果没有,那么您必须稍微更改我上面使用的逻辑。您可以尝试以下方法:
SELECT
RESP_ID,
RESP_LVL
FROM
(
SELECT RESP_ID, 1 AS RESP_LVL FROM yourTable WHERE LEVEL1 = 'Y' UNION ALL
SELECT RESP_ID, 2 AS RESP_LVL FROM yourTable WHERE LEVEL2 = 'Y' UNION ALL
SELECT RESP_ID, 3 AS RESP_LVL FROM yourTable WHERE LEVEL3 = 'Y' UNION ALL
SELECT RESP_ID, 4 AS RESP_LVL FROM yourTable WHERE LEVEL4 = 'Y' UNION ALL
SELECT RESP_ID, 5 AS RESP_LVL FROM yourTable WHERE LEVEL5 = 'Y' UNION ALL
SELECT RESP_ID, 6 AS RESP_LVL FROM yourTable WHERE LEVEL6 = 'Y' UNION ALL
SELECT RESP_ID, 7 AS RESP_LVL FROM yourTable WHERE LEVEL7 = 'Y'
) t
ORDER BY
RESP_ID,
RESP_LVL;
这里我假设您的复选框由
CHAR(1)
字段支持,该字段的值为Y
或N
。如果没有,那么您必须稍微更改我上面使用的逻辑。这是否回答了您的问题?这回答了你的问题吗?