我有一个对多个表进行复杂 MySQL 查询的函数,我在其中检查许多条件,例如未删除、活动、语言、日期、访问权限等。所以它已经有多个 if-else 了。
现在我需要创建另一个与现有查询非常相似的查询,在该查询中我只查询具有不同顺序的特定类别,在另一个查询中通过相关性计算在标题中搜索关键字。
您可以在此处看到两个类似的查询:http: //pastebin.com/3NY1s1gU和http://pastebin.com/RqpzqWrK (表名和列名是预定义的。我无法更改任何内容。)
我不想添加更多 if-else 或复制和粘贴现有查询,因为它会创建大量冗余和/或难以维护的代码。
是否有解决此问题的设计模式?