WHERE子句中的SQL IN运算符

MrB*_*MrB 4 sql arrays postgresql

以下查询:

SELECT SUM (peak_power) FROM t_mpi_pv WHERE info_id IN ( 
 SELECT mp_info_id FROM t_mp WHERE mp_id IN (
  ARRAY[29800001,29800008,29800015,29800022,29800029]
 )
)
Run Code Online (Sandbox Code Playgroud)

不行.我收到错误:

"运算符不存在:整数=整数[]".

SELECT SUM (peak_power) FROM t_mpi_pv WHERE info_id IN ( 
 SELECT mp_info_id FROM t_mp WHERE mp_id = 29800001  
)
Run Code Online (Sandbox Code Playgroud)

作品.

我究竟做错了什么?

cod*_*ict 5

尝试:

SELECT SUM (peak_power) FROM t_mpi_pv WHERE info_id IN ( 
 SELECT mp_info_id FROM t_mp WHERE mp_id IN 
  (29800001,29800008,29800015,29800022,29800029)
 )
)
Run Code Online (Sandbox Code Playgroud)