gpt4 book ai didi

mysql - 使用 mysql 行值作为 mysql 运算符

转载 作者:可可西里 更新时间:2023-11-01 08:31:05 26 4
gpt4 key购买 nike

我有一个表,其中包含我希望用作运算符的值:

+ value 1 + value 2 + operator +
| --------+---------+----------|
| value 1 | value 2 | = |
| value 3 | value 4 | > |
| value 5 | value 6 | < |
+---------+---------+----------+

我想知道是否可以使用 operator 编写查询列作为 WHERE 的运算符子句,例如像这样:

SELECT *
FROM table1 table2 operatorTable
WHERE `table1`.`id` `operatorTable`.`operator` `table2`.`id`

operatorTable.operator在此查询中将替换为 = , ><分别。

我的意思是,我知道如何在 PHP 中做到这一点,但我想严格使用 MySQL :)

目标是实现查询的最大速度。

最佳答案

您可以使用 CASE 运算符:

SELECT *
FROM table1 table2 operatorTable
WHERE
CASE `operatorTable`.`operator`
when '<' then `table1`.`id` < `table2`.`id`
when '=' then `table1`.`id` = `table2`.`id`
when '>' then `table1`.`id` > `table2`.`id`
END CASE

(未测试,但应该可以)

关于mysql - 使用 mysql 行值作为 mysql 运算符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27057464/

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