Could you hire me? Contact me if you like what I’ve done in this article and think I can create value for your company with my skills.

January 5, 2015 / by Zsolt Soczó

SQL fejtörő 2.

Az alábbi példa 1 sornyi és 1 oszlopnyi eredményhalmazt ad vissza, amiben NULL található. A feladat, hogy a középre be kellene írni egy darab sql kódot, amitől két null jön vissza 1 helyett.

USE TempDB
GO

CREATE TABLE AlmaTabla (Oszlop1 INT NULL)
CREATE TABLE KorteTabla (Oszlop1 INT NULL)
GO
ALTER TABLE AlmaTabla ADD CONSTRAINT
UX_AlmaTabla UNIQUE NONCLUSTERED (Oszlop1);
ALTER TABLE KorteTabla ADD CONSTRAINT
UX_KorteTabla UNIQUE NONCLUSTERED (Oszlop1);
GO
INSERT INTO AlmaTabla (Oszlop1)
VALUES (NULL)
GO
INSERT INTO KorteTabla (Oszlop1)
VALUES (NULL)
GO

--------------------------------------
-- Ide kellene valamit beirni, hogy 2 NULL-os sor jojjon vissza
--------------------------------------

SELECT st.Oszlop1
FROM AlmaTabla ft
LEFT JOIN KorteTabla st ON st.Oszlop1 = ft.Oszlop1
GO

DROP TABLE AlmaTabla;
DROP TABLE KorteTabla;
GO

Kommenteket most se engedek ki, hogy mindenki gondolkodhasson, csak szerdán, addig jöhetnek a megoldások. :)

A Test Driven Development tanfolyam következő felvonása február 9-edikén lesz, szeretettel várlak.

Could you hire me? Contact me if you like what I’ve done in this article and think I can create value for your company with my skills.

LEAVE A COMMENT

5 COMMENTS

  • Vazeratti January 5, 2015

    Pl: INSERT INTO AlmaTabla(Oszlop1) VALUES(0)
    A LEFT JOIN miatt az AlmaTabla minden sorához megpróbál valamit kapcsolni, viszont mivel nem talál semmit (NULL =/= NULL) ezért NULL-t ír ki.

  • Atcom January 5, 2015

    select null union all

  • mica January 6, 2015

    pl.
    INSERT INTO AlmaTabla (`Oszlop1`) VALUES (1);

  • Molnár Csaba January 6, 2015

    INSERT INTO AlmaTabla (Oszlop1)
    VALUES (1)
    GO