在mysql的where子句中,有没有一种方法可以将列的值作为比较运算符“interpolate”?

lrpiutwd  于 2021-06-21  发布在  Mysql
关注(0)|答案(1)|浏览(478)

假设我有一个名为“comparison\u operator”的列,其值为“>”、“=”、“<”。在“产品”表中。有没有办法在where子句中使用它?

  1. SELECT products.name FROM products WHERE products.price #{comparison_operator} products.cost

我相信这个问题的答案是否定的,但我想看看是否有其他方法可以达到同样的目的。谢谢您!

2admgd59

2admgd591#

是的,但不是那样。

  1. CASE
  2. WHEN products.comparison_operator = ">"
  3. THEN products.price > products.cost
  4. WHEN products.comparison_operator = "<"
  5. THEN products.price < products.cost
  6. ELSE
  7. products.price = products.cost
  8. END

相关问题