Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/postgresql/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 如何使用Postgres在子查询中使用left函数_Sql_Postgresql - Fatal编程技术网

Sql 如何使用Postgres在子查询中使用left函数

Sql 如何使用Postgres在子查询中使用left函数,sql,postgresql,Sql,Postgresql,我有这样一个问题: select * from employee where (employee_id in (SELECT DISTINCT SubTable.blockid FROM broad.territory_block BlockSubTable WHERE ( (

我有这样一个问题:

select * from employee where (employee_id in (SELECT DISTINCT 
SubTable.blockid 
        FROM 
                  broad.territory_block 
                  BlockSubTable 
                                         WHERE  ( ( 
                  BlockSubTable.id IN ( 398 ) ))))
现在我的
employee\u id
是10位数字,子查询的输出是13位数字。我尝试使用
left(“”,10)
来匹配子查询输出,但是
misplaced left函数得到错误。有人能帮助我如何使用
left
函数匹配结果吗。我需要将
employee\u id
与子查询输出匹配


注意:这不是实际的查询,创建此查询是为了解释问题

只需将其应用于列:

select * 
from employee 
where employee_id in (SELECT left(blockid, 13)
                      FROM  BlockSubTable 
                      WHERE  BlockSubTable.id IN ( 398 ) )

只需将其应用于列:

select * 
from employee 
where employee_id in (SELECT left(blockid, 13)
                      FROM  BlockSubTable 
                      WHERE  BlockSubTable.id IN ( 398 ) )

样本数据和期望的结果将非常有用。我完全不明白为什么你要将名为
employeeid
的东西与名为
blockid
的东西进行比较。这些列的数据类型是什么?你是否尝试过从…样本数据中选择DISTINCT LEFT(SubTable.blockid,10)和期望的结果真的会有帮助。我完全不明白为什么你会将名为
employeeid
的内容与名为
blockid
的内容进行比较。这些列的数据类型是什么?你是否尝试过从中选择DISTINCT LEFT(SubTable.blockid,10)…非常感谢你的快速帮助。!!:D@Developer52如果答案能解决您的问题,您应该接受。非常感谢您的快速帮助。!!:D@Developer52如果答案能解决你的问题,你应该接受