Сравнить значение одной строки со всеми другими значениями в одном столбце? - PullRequest
0 голосов
/ 28 сентября 2018

У меня есть таблица из отдельных столбцов с одним или несколькими значениями.

Мне нужно сравнить одно значение строки со всеми другими значениями, если одно значение строки равно или существует в другом значении строки в SQL.

Как я могу сделать это в SQL?

Ответы [ 3 ]

0 голосов
/ 28 сентября 2018

Это вернет отдельный список значений, найденных в столбце myval, вместе со счетчиком количества строк, в которых указано это значение. Счетчик 1 означает, что значение отображается только в одной строке.

SELECT t.myval
     , COUNT(1)  AS cnt
  FROM mytable t 
 GROUP BY t.myval 

Мы могли бы включить условия для фильтрации уникальных значений и возврата только дублированных значений, добавив эту строку в конце запроса:

HAVING COUNT(1) > 1 

Отсутствует фактическая спецификация, включая пример данных и ожидаемый результатДогадываемся.

0 голосов
/ 28 сентября 2018

Я думаю, что в описании вашего вопроса вы хотите найти пересечение между таблицей в пределах тех же значений таблицы, например, Exmple, если у вас есть

--- tableName --- abc dcab abc

Вы пытаетесь получить abc и сколько пересечений у вас, это скажет вам, если есть какие-либо выводы, не так, так что запрос является самым простым, как это:

SELECT
    name, COUNT(*) as intersections
FROM
    tbl
GROUP BY
    name
HAVING 
    COUNT(*) > 1

и результат будет выглядеть так:

Надеюсь, это поможет!хорошего дня.

0 голосов
/ 28 сентября 2018

Во втором столбце будут все дубликаты значения в первом столбце

select A.value, B.value
from your_table A
cross join your_table B
where A.value = B.value
order by A.value;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...