gpt4 book ai didi

mysql - 你能建议这样的mysql函数吗?

转载 作者:行者123 更新时间:2023-11-29 05:06:08 31 4
gpt4 key购买 nike

如果这个问题很愚蠢,我很抱歉。我想做什么:-

<---'type' is a parameter of my procedure--->
SELECT * FROM `table1` WHERE
CASE type
WHEN 'some' THEN `column1`='column1string'
WHEN 'somestr' THEN `column2` = 'column2string' AND `column1` = 'column1string'
WHEN 'somestring' THEN `column3` = 'column3string'
END IF;

但我想在使用 case 语句时编写更多的 sql 查询:-

CASE type
WHEN 'some' THEN SELECT * FROM `table1` WHERE `coumn1`='column1string';
WHEN 'somestr' THEN SELECT * FROM `table1` WHERE `coumn2`='column2string' AND `column1` = 'column1string';
WHEN 'somestring' THEN SELECT * FROM `table1` WHERE `coumn2`='column2string';
END CASE;

如何在不多次编写相同查询的情况下执行此操作。因为我有 40 个这样的字符串用于比较。

最佳答案

我认为你可以只使用 bool 逻辑:

SELECT t.*
FROM `table1` t
WHERE (type = 'some' AND `column1` = 'column1string') OR
(type = 'somestr' AND `coumn2` = 'column2string') OR
(type = 'somestring' AND `coumn2` = 'column2string');

关于mysql - 你能建议这样的mysql函数吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47793761/

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