【发布时间】:2021-05-10 15:05:46
【问题描述】:
我是 SQL 新手,想知道是否有人可以帮助我解决这个小请求。我试图让我的输出如下所示:
但我目前得到这个输出:
这是我的 SQL 代码:
SELECT trk_id,
cur_state
FROM trk_id_def
Where (trk_id like 'TPA12%' )
ORDER BY trk_id
如何让列反映 MF、CH_A、CH_B 和 CH_C 及其各自的值?
【问题讨论】:
-
哪个 SQL? SQL 服务器? MySQL?玛丽亚数据库? PostgreSQL?别的东西? Edit 标记它。
-
请解释一下列的逻辑。
-
-C是最后一个可能的后缀吗?您还可以提供小提琴 (sqlfiddle.com) 以更快地获得帮助。 -
这不是您在数据库中存储数据的方式。您需要存储三件事:一些轨道组 ID ('TPA12')、一些轨道子 ID ('A'、'B'、...) 和当前状态 ('PROD'、'NM'、.. .),因此将这三个部分分开存放。不要将组和子 ID 粘合到一个字符串 ('TPA12-A')。
-
至于任务:空/MF、A、B 和 C 是表中唯一的子 ID(或者至少是您对此查询感兴趣的唯一子 ID)?或者在运行时是否可以将其他 ID 视为附加列?这将需要动态 SQL(即两个查询,一个基于另一个的结果)。您的查询已经为您提供了所需的所有数据。 GUI(应用程序、网站)关心网格中的显示通常是一项任务。