Сравнение нескольких столбцов с использованием IF в MySQL - PullRequest
0 голосов
/ 26 января 2012

Пожалуйста, помогите со следующим if оператором в MySQL 5.5.Я пытаюсь сравнить значения столбцов, чтобы увидеть, все ли они равны или различны.

SELECT IF(Column1 = Column2 = Column3 = Column4 = Column5, 'SAME', 'Different') 
AS ValueStatus 
FROM dbs.tabletest
GROUP BY Id

Я также попробовал следующее, однако, это приводит только к одному типу результата как «Другой», даже если все столбцыодинаковые значения.

  SELECT *,CASE 
  WHEN Column1 = Column2 = Column3 = Column4 = Column5 
    Then 'Same'
  ELSE 'Different' 
 END
  AS ValueStatus 
  FROM dbs.tabletest
  GROUP BY Id;

Ответы [ 2 ]

3 голосов
/ 26 января 2012

Должно быть column1 = column2 and column1 = column3 and column1 = column4 and column1 = column5 вместо.

Что случилось с вами, вы, вероятно, сравнили column1 с column2, который возвратил true, затем вы сравнили true с column3, что дает false, сравните false с column4 который также оценивается как false и т. д.

0 голосов
/ 26 января 2012

Майкл подход правильно. я хотел бы использовать как в MSSQL. не уверен, синтаксис в MySql. Выбрать Дело КОГДА ((столбец1 = столбец2) И (column1 = column3) и (column1 = column4) и (column1 = column5) ) тогда «То же самое» ELSE «Другой» конец как «ValueStatus» FROM tableName

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...