У меня есть записи в таблице, как показано на прилагаемом изображении. Все, что мне нужно найти те записи, у которых есть один и тот же «sortorder» другой «packageboxtypeid» w.r.t «CCID». Поэтому нам нужно найти те записи, которые имеют одинаковый CCID, один и тот же порядок сортировки, но другой тип packageboxtypeid. Пожалуйста помоги. Чтобы найти записи, которые имеют одинаковые
3
A
ответ
4
Похоже, что-то вроде этого будет работать. Используя INNER JOIN
с SELECT *
, вы можете сравнить записи бок о бок.
SELECT *
FROM [Table] A
INNER JOIN [Table] B
ON A.CCID = B.CCID
AND A.SortOrder = B.SortOrder
AND A.PackageBoxTypeId <> B.PackageBoxTypeId
Однако, если вам просто нужен чистый список записей вместо сравнения бок о бок, вы можете использовать коррелированный подзапрос с EXISTS
или IN
, как @gmiley указывает в комментариях. Я выбрал EXISTS
в качестве примера, так как не знаю, имеет ли ваш PackageBoxTypeId
значения NULL, но я уклоняюсь от IN
, когда есть столбцы NULL.
SELECT *
FROM [Table] A
WHERE EXISTS (
SELECT *
FROM [Table]
WHERE CCID = A.CCID
AND SortOrder = A.SortOrder
AND PackageBoxTypeId <> A.PackageBoxTypeId
)
2
SELECT DISTINCT t1.*
FROM table1 t1
INNER JOIN table1 t2
ON t1.CCID = t2.CCID
AND t1.sortorder = t2.sortorder
AND t1.packageboxtypeid <> t2.packageboxtypeid
Смежные вопросы
- 1. Запрос, чтобы найти пользователей, которые имеют одинаковый номер учетной записи
- 2. SQL: Выберите строки, которые имеют одинаковые слова
- 3. Найти записи, которые не имеют связанных записей
- 4. Найти строки, которые имеют одинаковые значения в другом столбце - Python
- 5. найти строки, которые имеют одинаковые значения в разных столбцах
- 6. Как найти элементы, которые имеют одинаковые идентификаторы и xpath
- 7. Совпадение слов, которые имеют одинаковые буквы
- 8. поиска данных, которые имеют одинаковые теги
- 9. Создайте подматрицы, которые имеют одинаковые значения ячейки
- 10. Слияние ячеек, которые имеют одинаковые данные
- 11. Подсчитайте строки, которые имеют одинаковые отношения
- 12. CakePHP 3 Найти записи, которые не имеют связанной записи (hasMany)
- 13. , которые имеют одинаковые пути и имеют фиксированный набор префикс пути
- 14. получить только записи, которые имеют записи присоединения
- 15. Найти записи, которые имеют детей записи, которые соответствуют все записи в списке
- 16. SQL JOIN Чтобы найти записи, которые не имеют записи соответствия с определенной стоимостью
- 17. Найти все записи, которые не имеют связанной модели
- 18. Rails - has_many: через найти записи, которые не имеют никакой связи
- 19. Найти записи, которые имеют различное отношение [многие ко многим]
- 20. ActiveRecord найти родительские записи, которые имеют определенное подмножество детей
- 21. Ember.js: Как найти записи, которые НЕ имеют набор свойств?
- 22. Sharepoint- Найти библиотеки документов, которые имеют доступ к записи
- 23. Spring Hibernate найти все записи, которые имеют значение в наборе
- 24. как найти и удалить записи, которые имеют только числовые значения
- 25. Найти записи, которые не имеют has_many: через ассоциацию
- 26. Найти записи, которые имеют несколько значений в других столбцах
- 27. Найти записи, которые не имеют связанных записей в SQL
- 28. Найти записи, которые имеют два точных копий много-ко-многим
- 29. найти все записи, которые имеют «истинное» значение в гнездовом JSON
- 30. Найти все записи, которые имеют число связей больше нуля
Был как раз собирался опубликовать то же самое. Я также хотел бы включить, что наряду с 'JOIN' вы можете использовать подзапрос через' EXISTS' или 'IN' для аналогичного эффекта. – gmiley
Согласитесь полностью. Я выбрал 'JOIN', чтобы вы могли сравнивать 2 записи бок о бок, а не просто чистый список записей, которые не сопоставляются, но требования к бизнесу могут диктовать либо на основе того, что вы хотите с ним делать. –