我有一个课程代号 COMP2221。
我还有一个函数finder(int)可以找到与某个模式匹配的所有代码。
喜欢:
select * from finder(20004)
会给:
comp2211
comp2311
comp2411
comp2221
与模式匹配comp2###。
我的问题是如何以简洁的方式表达“comp2221是否在finder(20004)中”?
我有一个课程代号 COMP2221。
我还有一个函数finder(int)可以找到与某个模式匹配的所有代码。
喜欢:
select * from finder(20004)
会给:
comp2211
comp2311
comp2411
comp2221
与模式匹配comp2###。
我的问题是如何以简洁的方式表达“comp2221是否在finder(20004)中”?
如何用简洁的方式表达“comp2221是否在finder(20004)中”?
使用EXISTS表达式并将测试放入WHERE子句中:
SELECT EXISTS (SELECT FROM finder(20004) AS t(code) WHERE code = 'comp2221');
返回单个TRUEor FALSE。从不为 NULL 并且从不超过一行 - 即使您的表函数finder()返回重复项。
或者fork函数finder()直接集成测试。可能更快。