检查一列是否等于一个数字数组mysql

时间:2021-01-01 15:17:37

标签: mysql sql

如何检查此查询的 int 数组?我查询只是为了检查 inregistrari.ID_camera= 101 例如,我如何检查 inregistrari.ID_camera = 101, 501 ..

SELECT DISTINCT(ID_camera), tip_confort.nume_tip_confort,
       COALESCE(SUM(inregistrari.ID_camera = '101'),0) AS nr_pers_in_camera, 
       locatii.nume_locatie, camere.nr_persoane_max  
  FROM inregistrari 
NATURAL JOIN camere 
NATURAL JOIN tip_confort 
NATURAL JOIN locatii 
  WHERE camere.ID_tip_confort =3 AND ID_camera=101;

我的查询结果是: enter image description here

想要的结果

enter image description here

1 个答案:

答案 0 :(得分:0)

您仍然没有提供locatii表的结构和示例数据,但我认为可以使用group by如下:

SELECT ID_camera, 
       tip_confort.nume_tip_confort,      
       Count(*) AS nr_pers_in_camera, 
       locatii.nume_locatie, 
       camere.nr_persoane_max  
  FROM inregistrari 
  NATURAL JOIN camere 
  NATURAL JOIN tip_confort 
  NATURAL JOIN locatii 
 WHERE camere.ID_tip_confort =3 
   AND ID_camera in (101,501)
 Group by ID_camera, 
          tip_confort.nume_tip_confort,
          locatii.nume_locatie,
          camere.nr_persoane_max