Mysql从sql select

时间:2018-11-19 12:22:53

标签: mysql sql variables

是否可以通过select创建变量?

set @MY_ID = 'SELECT ID FROM TMS.MY_TABLE WHERE MY_TABLE.UNIQ_COLUMN= 2134';

上面的代码可以工作,但是只保存字符串:

SELECT @MY_ID;返回

  

从TMS.MY_TABLE中的MY_TABLE.UNIQ_COLUMN = 2134'中选择ID

我必须知道此ID才能将其用作外键插入到另一个表中

2 个答案:

答案 0 :(得分:2)

您要这样做吗?

SELECT @MY_ID := ID
FROM TMS.MY_TABLE
WHERE MY_TABLE.UNIQ_COLUMN = 2134;

答案 1 :(得分:1)

另一种变化是

SELECT 
 ID
FROM 
 TMS.MY_TABLE
INTO @MY_ID
WHERE
 MY_TABLE.UNIQ_COLUMN = 2134

确保结果只能有一个记录。因此,如果ORDER BY column LIMIT 1没有唯一键或主键,很有可能需要添加MY_TABLE.UNIQ_COLUMN