c# - MySQL - 即使结果为零也选择定义的值
问题描述
我有以下查询结果:
并希望为每个“einfacheWanddicke”设置 B、C 和 D 的值。即使值为零。结果应如下所示:
到目前为止,查询如下所示:
Select
tbl_rts_proben.einfacheWanddicke,
lims.tbl_rts_aufnahmen.bewertungsGruppe As Bewertung,
Count(tbl_rts_aufnahmen.bewertungsGruppe) As Anzahl
From
tbl_rts_proben Left Join
v_auftragsuebersicht_zfp_php_ag_oe On
v_auftragsuebersicht_zfp_php_ag_oe.`LIMS Nummer` = tbl_rts_proben.limsNummer
Inner Join
tbl_rts_aufnahmen On tbl_rts_proben.id = tbl_rts_aufnahmen.probenID Inner Join
tbl_rts_auswertung On tbl_rts_aufnahmen.id = tbl_rts_auswertung.aufnahmenID
Inner Join
tbl_rts_fehler On tbl_rts_fehler.fehlerID = tbl_rts_auswertung.fehlerID
Where
v_auftragsuebersicht_zfp_php_ag_oe.StatusID = 3 And
Year(v_auftragsuebersicht_zfp_php_ag_oe.erstellungsdatum) = '2020' And
tbl_rts_proben.probenArtID = 2
Group By
tbl_rts_proben.einfacheWanddicke, lims.tbl_rts_aufnahmen.bewertungsGruppe,
tbl_rts_aufnahmen.bewertungsGruppe
Order By
Bewertung
有没有办法指定一种数组(B,C,D)?
问题的原因是我的问题是我无法在 C# 中创建缺少数据的堆积柱形图。
解决方案
您可以使用以下查询在 MySQL 中生成一种“aray”:
select substr('BCD', @i:=@i+1, 1) as AAA from tbl_rts_proben join (select @i := 0) as T where @i < 3;
(tbl_rts_proben 必须至少有 3 行才能获得 3 个结果行)。您可以通过以下方式将此查询用于 JOIN:
select N.*, T.AAA from tbl_rts_proben as N
join (select substr('BCD', @i:=@i+1, 1) as AAA from new_table1 join (select @i := 0) as T where @i < 3) as T;
但我还无法想象一个请求会给出你上面的结果。但也许这是一个更多努力的问题......
推荐阅读
- rust - 如何使用 Vulkano 计算着色器计算交换链图像?
- ruby-on-rails - 如何将两个不同 ActiveRecord 关系的 COUNT(*) 组合到一个 SQL 查询中?
- php - 数据库大小会导致内存不足错误吗?
- c# - 如何保护 Windows 窗体中的连接字符串
- sql - 使用 NVL 和静态值有什么不同
- r - R - 将大数据帧并行拆分为列表
- python-3.x - Buildozer 因 pip 依赖关系而失败,“没有有效的依赖关系图”
- csv - 需要使用批处理脚本替换 CSV 文件中的特定文本
- identityserver4 - 身份服务器 - 将自定义参数添加到来自令牌端点的 JSON 响应
- swift - 使 UIViewController 符合 AVCapturePhotoCaptureDelegate 不起作用