Nano Hash - криптовалюты, майнинг, программирование

Узнайте значения столбцов, связанные с более чем одним значением столбцов в Oracle

У меня есть таблица в оракуле с неуникальными значениями столбцов. Комбинации также не уникальны. Но ассоциация в определенном порядке должна быть уникальной. Я пробовал много решений. Этот вопрос самый близкий, но мне нужно решение в Oracle SQL. Ниже приведена моя таблица

--------------------------------------------------
  Teacher           subject             class_id
--------------------------------------------------
    Paul              English              001
    Paul              English              002
    Allen             English              003
    Sia               Maths                134
    John              Computer             913
    Jack              Physics              341
    Arlene            Maths                001
 -------------------------------------------------

Запрос должен возвращать только следующую информацию

English, Maths

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

28.01.2017

Ответы:


1

Если я правильно понимаю, вы хотите предметы, которые имеют более одного учителя. Это простой запрос агрегации с предложением having:

select subject
from t
group by subject
having min(teacher) <> max(teacher);
28.01.2017

2

Возможно, вы хотите что-то вроде этого:

select listagg (subject, ', ') within group (order by subject) subjects
from (
    select subject from classes 
    group by subject
    having count(teacher)>1
);

SUBJECTS                                                                       
-------------------------
English, Maths   

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

select listagg (subject, ', ') within group (order by subject) subjects
from (
    select subject,
    count(teacher) over (partition by subject) teachers,
    row_number() over (partition by subject order by class_id) rn 
    from classes
)
where teachers>1 and rn=1
;
28.01.2017
Новые материалы

Кластеризация: более глубокий взгляд
Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

Как написать эффективное резюме
Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

Частный метод Python: улучшение инкапсуляции и безопасности
Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

Как я автоматизирую тестирование с помощью Jest
Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..