WebHU - Programozási kérdések és válaszok

Keresse meg azoknak a beszállítóknak az oldalát, akik csak piros alkatrészeket szállítanak

megint egy sql kérdés.

Az első dolgom, hogy csatlakozzam a táblákhoz: Válassza ki az SID-t a cat c JOIN részből p ON c.PID=p.PID; Kipróbáltam a birtoklási záradékot, de nincs összesítő funkcióm, és a „hol” használata haszontalan, mert akkor megkapom az összes beszállítót, amely piros részt szállít.

Van általános válasz? hogy megkapjam azt a szállítót is, aki csak zöld alkatrészeket biztosít?

Szükséges kimenet:

SID   
-----   
S2

A táblázatok a következőket tartalmazták:

SELECT * FROM parts 

PID   PNAME      COLOR      WEIGHT CITY       
----- ---------- ---------- ------ ---------- 
P1    Nut        red            13 London     
P2    Bolt       black          18 Paris      
P3    Screw      red            17 Rome       
P4    Screw      silver         14 London     
P5    Cam        trans          12 Paris      
P6    Cog        cyan           19 London     
P7    Nut        magenta        15 -          
P8    Wheel      red            15 Munich     
P9    Bearing    green          15 Milano     

  9 record(s) selected. 


SELECT * FROM catalog 

SID   PID   COST         
----- ----- ------------ 
S1    P3            0.50 
S1    P4            0.50 
S1    P8           11.70 
S2    P1           16.50 
S2    P3            0.55 
S2    P8            7.95 
S3    P8           12.50 
S3    P9            1.00 
S4    P5            2.20 
S4    P6      1247548.23 
S4    P7      1247548.23 

  11 record(s) selected.

Köszönjük nagy segítségét.

10.07.2019

Válaszok:


1

Összesítést akarsz. Az egyik módszer a színek összehasonlítása a min() és max() használatával:

select c.SID
from cat c JOIN
     part p
     ON c.PID = p.PID
group by c.SID
having min(p.color) = max(p.color) and  -- all colors are the same
       min(p.color) = 'red'             -- and that color is 'red'
10.07.2019
  • mi lenne a min(p.color) és max(p.color) kimenete? 10.07.2019
  • Nem értem, mert a színek nem számok. A min és max értéket eddig csak a legalacsonyabb vagy legmagasabb érték eléréséhez használtam 10.07.2019
  • @headacheFromCoding . . A min() és a max() karakterláncokon és dátumokon is működik. 10.07.2019
  • oké, de hogy nézne ki a kimenet? mi a max(p.color) kimenete, amit megértek? 10.07.2019
  • @headacheFromCoding . . . Általában alfabetikus rendezést használ a szélsőértékek meghatározásához. Pontosabban, ezek az oszlophoz, táblához vagy adatbázishoz meghatározott leválogatástól függenek. 10.07.2019
  • Új anyagok

    A rádiógomb ellenőrzött eseményének használata a jQueryben
    Ebben a cikkben látni fogjuk, hogyan kell dolgozni a jquery választógombbal ellenőrzött eseményeivel. A választógombok HTML gombok, amelyek segítenek kiválasztani egyetlen értéket egy csoportból...

    Körkörös függőségek megoldása terraformban adatforrásokkal – lépésről lépésre
    Mi az a körkörös függőségek Dolgozzunk egy egyszerű eseten, amikor az SQS-sor és az S3-vödör közötti körkörös függőség problémája van egy egymástól függő címkeérték miatt. provider..

    Miért érdemes elkezdeni a kódolást 2023-ban?
    01100011 01101111 01100100 01100101 — beep boop beep boop Világunk folyamatosan fejlődik a technológia körül, és naponta fejlesztenek új technológiákat a valós problémák megoldására. Amint..

    🎙 Random Noise #2  – Örökbefogadás és hit
    az analitika íratlan világának gondozása Szeretné, hogy ezek a frissítések a postaládájába kerüljenek? Iratkozzon fel itt . "Ha önvezető autókat gyártanak, akkor mi miért ne..

    A legrosszabb politika és prediktív modellek májátültetésre jelöltek számára az Egyesült Államokban
    A máj (vagy óangolul lifer) az emberi test legnehezebb belső szervére utal, amely csendesen működik a nap 24 órájában. Mit csinál a máj? 500 feladatot hajt végre a szervezet egészségének..

    5 webhely, amely 2022-ben fejleszti front-end fejlesztői készségeit
    Frontendmentor.io A tényleges projektek létrehozásával a Frontendmentor.io segítséget nyújt a front-end kódolási képességeinek fejlesztésében. A kódolást azután kezdheti meg, hogy..

    Mikor kell használni a Type-t az interfészhez képest a TypeScriptben?
    A TypeScript a JavaScript gépelt szuperkészlete, amely statikus gépelést ad a nyelvhez. Ez megkönnyíti a robusztus és karbantartható kód írását azáltal, hogy a hibákat a fordítási időben..