Создание выражения case с помощью оператора соединения; оракул - PullRequest
0 голосов
/ 07 мая 2018

Мне нужно, чтобы все Library_ID вернулось как да или нет. Они либо 1, 2 или 3, поэтому мне нужно поменять все, что 1, 2 или 3, на да, а все остальные на нет. Вот мое заявление до сих пор:

SELECT DISTINCT 
    Title, Publisher, Release_Date, ISBN, l.Library_ID
FROM  
    Catalog_Item c
INNER JOIN 
    Book b ON c.Catalog_Item_ID = b.Catalog_Item_ID
INNER JOIN 
    Physical_Item p ON c.Catalog_Item_ID = p.Catalog_Item_ID
INNER JOIN 
    Branch br ON p.Branch_ID = br.BRranch_ID
INNER JOIN 
    Library l ON br.Library_ID = l.Library_ID
ORDER BY 
    Title;

Теперь я застрял.

Ответы [ 2 ]

0 голосов
/ 07 мая 2018

Попробуйте следующее CASE выражение: -

SELECT DISTINCT Title, Publisher, Release_Date, ISBN, l.Library_ID, CASE WHEN l.Library_ID IN (1,2,3) THEN 'YES' ELSE 'NO' END AS "YES_OR_NO" FROM<br> Catalog_Item c INNER JOIN Book b ON c.Catalog_Item_ID = b.Catalog_Item_ID INNER JOIN Physical_Item p ON c.Catalog_Item_ID = p.Catalog_Item_ID INNER JOIN Branch br ON p.Branch_ID = br.BRranch_ID INNER JOIN Library l ON br.Library_ID = l.Library_ID ORDER BY Title;

0 голосов
/ 07 мая 2018

Это так просто?

SELECT DISTINCT
    Title, Publisher, Release_Date, ISBN,
    case when l.Library_ID in (1,2,3) then 'Yes' else 'No' end as Library_ID
From ...
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...