gpt4 book ai didi

MySQL:从案例表达式中将值插入表中

转载 作者:行者123 更新时间:2023-11-29 05:54:52 24 4
gpt4 key购买 nike

下面我运行了一个程序,用于将一些值插入到我的 shipin 表中。通常我的 Reference 2 字段是静态的,但我需要它是可变的。但是,我从中提取的字段 'shipinimport'.'accountID' 需要返回与现有结果不同的结果。如您所见,这就是 case 表达式的用武之地。

我的问题是,这实际上并没有将返回的结果插入到我的 shipin 表中。我可以查询它并获得我正在寻找的结果,但我需要它把它和我过程中的其余值一起插入到表中。我曾尝试在我的程序中移动表达式,认为这可能是事件顺序问题,但这没有用。那么有没有办法做到这一点?非常感谢任何帮助或指导。

CREATE DEFINER=`root`@`%` PROCEDURE `SubjectDetailsExportToShipIn_hs`()
BEGIN

INSERT INTO ShipInImport
SELECT *
FROM dpi_timestone.SubjectDetailsView_hs;

INSERT INTO `timestone`.`shipin`
(`REFERENCE_1`,
`REFERENCE_2`,
`date_loaded`,
`location`)

SELECT
`shipinimport`.`SubjectKey`, --Reference 1
`shipinimport`.`AccountID`, --Reference 2
Now(), --DateLoaded
'DPI'--location
FROM `dpi_timestone`.`shipinimport`;

Select Case AccountID
When 16 Then 191
When 1 Then 125
End
FROM `dpi_timestone`.`shipinimport`;
End

最佳答案

如果您只是想替换“引用 2”的那些 AccountID 值;将 CASE 放在您的第一个选择中,如下所示:

SELECT
`shipinimport`.`SubjectKey`, --Reference 1
CASE `shipinimport`.`AccountID`
WHEN 16 THEN 191
WHEN 1 THEN 125
ELSE `shipinimport`.`AccountID`
END, --Reference 2
Now(), --DateLoaded
'DPI'--location
FROM `dpi_timestone`.`shipinimport`;

如果不是这种情况,您的代码不会明确表示您期望 191 和 125 结束的位置。

关于MySQL:从案例表达式中将值插入表中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50456850/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com