假设我有第一张这样的 table
分支表
|name |description|
|123456ABC|FOO |
|553646DEF|FO2 |
第二张 table 是这样的
余额表
|name|description|
|ABC |oof |
|DEF |2of |
我想查询 Balance 表,其中每一行都包含 Branch 表中的名称.. 例如 Branch 表中的“123456ABC”,我想从 Balance 表中获取“ABC”行
我怎样才能做到这一点?到目前为止,我已经尝试过这个查询,但没有成功
select * from Balance
where name like (
SELECT `name` FROM Branch
);
有什么建议吗?
最佳答案
您应该将 balance
的名称转换为LIKE
模式:
SELECT * FROM Balance
WHERE (
SELECT `name` FROM Branch
) LIKE '%' || name;
连接可能看起来更具可读性:
SELECT b.* FROM Balance b JOIN Branch r ON r.name LIKE '%' || b.name;
关于sql - 使用 like 的 PostgreSQL 子查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48225313/