这是一个示例查询:
SELECT thing_id FROM thing WHERE thing_type IN (3, 7)
我想将3和7变成易于理解的名称,以帮助了解查询的实际作用。像下面这样的东西会很棒:
SELECT thing_id FROM thing WHERE thing_type_id IN (OPENED, ONHOLD)
知道OPENED和ONHOLD会使它们的实际值在其他地方声明。
我在想,也许还有一种方法可以通过对THOM_TYPE表进行JOIN来实现。
请注意,我被困在直接编码查询而不是使用抽象框架的环境中。
假设您有一个名为ThingNames的链接表,其中有两列,即id和ThingName,则可以执行此操作
SELECT thing_id FROM thing LEFT JOIN ThingNames on thing.thing_type_id = ThingName.id WHERE ThingNames.ThingName IN ('OPENED', 'ONHOLD')
(不要忘记括号内ThingNames周围的引号。