以下查询在mysql中是否合法?在其他 SQL 中?是否存在在算术中使用 CASE 语句不稳定或不可能的情况?您是否有这样做的经验,对效率问题等有任何想法?(此操作一次将处理数千条记录的结果集,最终数万条记录,但不会更多。)
SELECT
RAND() * 10 * t.weighting *
CASE
WHEN t.happiness_level > 9.5 THEN 40
ELSE 20
END
AS priority
FROM table t