. Я хочу, чтобы это можно было сделать, верните первое значение, отличное от NULL в списке, или NULL, если нет значения, отличные от NULL. Я использую Oracle SQL для базы данных oracle.Возвращает первое значение, отличное от NULL в списке, или NULL, если нет значений, отличных от NULL.
SELECT
a.customer,
a.item,
b.item,
FROM
Orders a
LEFT JOIN
item_desc c
ON
a.item= c.tag1 OR
a.item= c.tag2 OR
a.item= c.tag3 OR
a.item= c.tag4 OR
a.item= c.tag5
LEFT JOIN
Orders b
ON
c.item = b.item AND
a.customer = b.customer
WHERE
a.itemLIKE 'CP%'
GROUP BY
a.customer,
a.item,
b.item;
Цель моего запроса, чтобы убедиться, что клиент имеет основной элемент, а не только плетутся купленной, но не может быть плетутся элемент, который принадлежит к нескольким позициям вы увидите ниже, как Джон и Mike есть совпадение для элемента X и значение Null, потому что вы видите элемент 422 является плетутся для элемента X и В. результаты выглядят следующим образом:
Customer Item Item
Jon 422 X
Jon 424 NULL
Mike 424 X
Mike 422 Null
Jay 422 Null
Dan 422 B
Dan 422 Null
цель моего запроса, чтобы убедиться, что у клиента есть требуемый тег вместе с купленным предметом, но может быть тег по элементу, принадлежащему нескольким элементам.
Я хочу, чтобы результаты были такими: Поскольку у Джона и Майка было совпадение, нулевое значение исчезает из набора результатов, но поскольку у Джей не было соответствия, значение Null оставалось.
Customer Item Item
Jon 422 X
Mike 424 X
Jay 422 Null
Dan 422 B
таблицы SQL и результирующие наборы являются по своей сути неупорядоченное. Что вы подразумеваете под «первым»? –
Я только хочу вернуть один результат, но я хочу, чтобы иметь возможность возвращать соответствующий элемент, если он есть, и если нет соответствующего элемента, кроме нулевого значения – dc4teg
первое выражение, которое изначально не оценивает значение NULL. – dc4teg