更改从 SQL 服务器数据库获取的数据值
Change the data values getting from SQL Server database
我正在为我的项目使用 express、sequelize 和 SQL 服务器。
我有三个 table,我必须从这些数据 table 中读取列。
我的第一个数据库 table 是这样的:
在第一个查询中,我 select 值列
SELECT Date_Time, Value1, Value2, Value3, Value4, Value5, Value6, Value7, Value8
FROM S001T01
实际上我必须阅读所有专栏,但问题从这里开始,所有状态代码都保存在不同的 table 中,代码名称不同,例如,
(状态列表 Table)
当我收到 post 请求时,我必须发送带有
的响应
Value1,Status1,Value2,Status2....
但是,将状态列中的值替换为状态列表中的等效值 table。例如,它应该写“Veri Yok”(在土耳其语中表示没有数据)而不是 0。
我想过为每一列单独写一个查询,然后在数组中更改,但我认为这会花费很多时间。
我试着写
SELECT
Status1,
Status2,
CASE Status1
WHEN 0 THEN 'Veri YOK'
WHEN 1 THEN 'Veri Geçerli'
END
FROM S001T01
但是我有110个StatusCodeName,每一列每一个代码都很难写。
有没有其他方法可以更改所有列数据?
如果你能帮上忙,我会很高兴。
显然您的设计很糟糕 table 所以这里有一些选择:
- 因为您有 8 个值,所以加入您的状态列表 table 八次
SELECT Date_Time, Value1, Value2, Value3, Value4, Value5, Value6, Value7, Value8
sl1.StatusUseCode as Status1, ...... sl8.StatusUseCode as Status8,
FROM S001T01 s
left join StatusList sl1 on s.Status1=sl1.StatusCode
left join StatusList sl2 on s.Status2=sl2.StatusCode
left join StatusList sl3 on s.Status3=sl3.StatusCode
:
:
left join StatusList sl8 on s.Status8=sl8.StatusCode
- 另一个选项有点花哨
一个。将列转为行
b。加入 StatusList
c。旋转回列
我正在为我的项目使用 express、sequelize 和 SQL 服务器。
我有三个 table,我必须从这些数据 table 中读取列。
我的第一个数据库 table 是这样的:
在第一个查询中,我 select 值列
SELECT Date_Time, Value1, Value2, Value3, Value4, Value5, Value6, Value7, Value8
FROM S001T01
实际上我必须阅读所有专栏,但问题从这里开始,所有状态代码都保存在不同的 table 中,代码名称不同,例如, (状态列表 Table)
当我收到 post 请求时,我必须发送带有
的响应Value1,Status1,Value2,Status2....
但是,将状态列中的值替换为状态列表中的等效值 table。例如,它应该写“Veri Yok”(在土耳其语中表示没有数据)而不是 0。
我想过为每一列单独写一个查询,然后在数组中更改,但我认为这会花费很多时间。
我试着写
SELECT
Status1,
Status2,
CASE Status1
WHEN 0 THEN 'Veri YOK'
WHEN 1 THEN 'Veri Geçerli'
END
FROM S001T01
但是我有110个StatusCodeName,每一列每一个代码都很难写。
有没有其他方法可以更改所有列数据?
如果你能帮上忙,我会很高兴。
显然您的设计很糟糕 table 所以这里有一些选择:
- 因为您有 8 个值,所以加入您的状态列表 table 八次
SELECT Date_Time, Value1, Value2, Value3, Value4, Value5, Value6, Value7, Value8
sl1.StatusUseCode as Status1, ...... sl8.StatusUseCode as Status8,
FROM S001T01 s
left join StatusList sl1 on s.Status1=sl1.StatusCode
left join StatusList sl2 on s.Status2=sl2.StatusCode
left join StatusList sl3 on s.Status3=sl3.StatusCode
:
:
left join StatusList sl8 on s.Status8=sl8.StatusCode
- 另一个选项有点花哨
一个。将列转为行
b。加入 StatusList
c。旋转回列