我有一个位列NonMileage
,基于该位列,我想创建一个可以在 where 子句中使用的变量。
这是一个两部分的问题:
- 你如何区分一个变量?下面的代码不区分@NoMileageListing
- 然后我将@MileListingClause 设置为字符串,我可以像@MileListingClause 一样使用@MileListingClause 吗?
.
SET @NoMileageListing = (SELECT NonMileage FROM tbldealerships);
SELECT
@NoMileageListing CASE @NoMileageListing when 1 then
SET @MileListingClause = 'tblcargarage.miles >= 0' else
SET @MileListingClause = 'tblcargarage.miles != 0' end case;
这是答案
SET @NoMileageListing = (SELECT NonMileage FROM tbldealerships);
SELECT CASE @NoMileageListing
WHEN 1 THEN 'tblcargarage.miles >= 0'
ELSE 'tblcargarage.miles != 0'
END
INTO @NoMileWhereClause;
select @NoMileWhereClause;
在这里找到: Mysql 使用 SELECT CASE 的结果存储变量