Tapahtumat

Kun kirjaudut sisään näet tässä ilmoitukset sinua kiinnostavista asioista.

Kirjaudu sisään

Työhaastattelussa: sinulla on kaksi samanlaista tietokantaa. Toisesta poistetaan rivi. Miten saat selville, mikä rivi poistettiin?

Vierailija
04.05.2025 |

Vastasin, että laitan tietokannat vierekkäisiin ikkunoihin ja alan rivi riviltä vertailla. Onko tämä oikea vastaus? Panostahan siinä aikanaan tulee sen kohdalle, jota ei toisesta löydy!

Kommentit (70)

Vierailija
21/70 |
04.05.2025 |
Näytä aiemmat lainaukset

Vierailija kirjoitti:

Miksi hakisin tuollaista suorittavan työn paikkaa?

Haiskahtaa suojatyöpaikassa istuvalta kunnan elätiltä.

Vierailija
22/70 |
04.05.2025 |
Näytä aiemmat lainaukset

Vierailija kirjoitti:

Vierailija kirjoitti:

Miksi hakisin tuollaista suorittavan työn paikkaa?

Haiskahtaa suojatyöpaikassa istuvalta kunnan elätiltä.

Yksityisissä yrityksissä ei tehdäkään oikeita töitä.

Sisältö jatkuu mainoksen alla
Sisältö jatkuu mainoksen alla
Vierailija
23/70 |
04.05.2025 |
Näytä aiemmat lainaukset

Vierailija kirjoitti:

Antaisin ChatGPT:n tehdä homman.

Onpas tietoturva hyvässä kunnossa, jos chatgpt pääsisi tietokantaan käsiksi.

Vierailija
24/70 |
04.05.2025 |
Näytä aiemmat lainaukset

Vierailija kirjoitti:

Vastauksesi osoittaa loogista ajattelua, mutta työhaastattelutilanteessa odotetaan usein tehokkaampaa, teknisesti optimoitua ratkaisua varsinkin jos haet tekniseen tai IT-alan tehtävään.

Mikä olisi parempi vastaus?

Riippuen tietokannan koosta ja käytössä olevista työkaluista, tehokkaampi tapa olisi:

1. SQL-kyselyllä erot

Jos kyseessä on relaatiotietokanta (esim. PostgreSQL, MySQL), voit tehdä EXCEPT-operaation (tai vastaavan) kahden taulun välillä:

sql

CopyEdit

SELECT * FROM tietokanta1.taulu EXCEPT SELECT * FROM tietokanta2.taulu;

Tämä palauttaa rivit, jotka ovat vain ensimmäisessä tietokannassa, eli poistettu rivi.

Joissain tietokannoissa (esim. MySQL) EXCEPT ei ole suoraan tuettu, mutta voit käyttää LEFT JOINia ja IS NULL -ehtoa:

sql

CopyEdit

SELECT a.* FROM tietokanta1.tau

Tämä tekoälyn tekemä vastaus on 1000 kertaa parempi kuin AP:n ja siksi robotit tuleekin viemään armotta tuollaisten osaamattomien näyttelijöiden työt.

Vierailija
25/70 |
04.05.2025 |
Näytä aiemmat lainaukset

Googlaa Susanna Penttilä & only fans

Vierailija
26/70 |
04.05.2025 |
Näytä aiemmat lainaukset

Vierailija kirjoitti:

Vierailija kirjoitti:

Mutta jos kysymys on kahdesta taulusta, niin ratkaisu on helppo:

SELECT *

Except on myös hyvä, Except on myös hyvä, ehkä tehokkaampikin.Except on myös hyvä, ehkä tehokkaampikin.ehkä tehokkaampikin.FROM Taulu1 WHERE avainsarake NOT IN

(SELECT avainsarake

 FROM Taulu2);

Except on myös hyvä, ehkä tehokkaampikin.

Except tuottaa saman vastauksen, mutta on tuskin yllä annettua kyselyä tehokkaampi, koska siinä pitää verrata koko rivejä pelkän avainattribuutin sijaan.

Sisältö jatkuu mainoksen alla
Vierailija
27/70 |
04.05.2025 |
Näytä aiemmat lainaukset

Kysästin DeepSeek-tekoälyltä samaa:

"Hei kiinan ihme, minulla on tehtävä pieni SQL lause, voitko auttaa. On kaksi tietokantaa, TKa ja siitä tehty kopio TKb. Molemmat sisältävät 31 taulukkoa, joista yksi on nimeltään TaulVelat. Nyt joku on poistanut yhden tietuerivin TKb-tietokannan TaulVelat-taulukosta. Tee SQL-lause, jossa verrataan näiden kahden taulukon tietueet ja tulostetaan tietue, joka toisesta puuttuu."

 

Tässä on SQL-lause, joka vertaa TaulVelat-taulukkoa kahdessa tietokannassa (TKa ja TKb) ja löytää ne rivit, jotka puuttuvat TKb:stä:

sql

SELECT TKa.* FROM TKa.dbo.TaulVelat AS TKa WHERE NOT EXISTS ( SELECT 1 FROM TKb.dbo.TaulVelat AS TKb WHERE -- Oletetaan, että jokin yhdistävä sarake (esim. ID) on olemassa -- Jos taulussa on primääriavain, käytä sitä TKa.ID = TKb.ID -- Jos ei ole yksittäistä avainta, voit joutua vertaamaan useita sarakkeita: -- TKa.sarake1 = TKb.sarake1 AND -- TKa.sarake2 = TKb.sarake2 AND -- ... );

Huomioita:

-Korvaa ID taulun todellisella yksilöllisellä tunnisteella (primääriavaimella).

-Jos taulussa ei ole yksittäistä avainta, sinun on ehkä verrattava useita sarakkeita varmistaaksesi, että löydät täsmälleen oikean rivin.

-Syntaksi voi vaihdella hieman käyttämäsi tietokantajärjestelmän mukaan (esim. SQL Server, MySQL, Oracle).

-Jos haluat löytää myös rivit, jotka ovat TKb:ssä mutta eivät TKa:ssa, voit käyttää FULL OUTER JOIN -operaatiota.

-Tietokantojen nimeäminen (TKa.dbo.TaulVelat) riippuu tietokantajärjestelmästäsi. Esimerkiksi SQL Serverissä dbo on oletusskeema.

Vierailija
28/70 |
04.05.2025 |
Näytä aiemmat lainaukset

Vierailija kirjoitti:

Kysästin DeepSeek-tekoälyltä samaa:

"Hei kiinan ihme, minulla on tehtävä pieni SQL lause, voitko auttaa. On kaksi tietokantaa, TKa ja siitä tehty kopio TKb. Molemmat sisältävät 31 taulukkoa, joista yksi on nimeltään TaulVelat. Nyt joku on poistanut yhden tietuerivin TKb-tietokannan TaulVelat-taulukosta. Tee SQL-lause, jossa verrataan näiden kahden taulukon tietueet ja tulostetaan tietue, joka toisesta ...

Liian täydellinen. Mutta on tosi että tämmmöiset työt ovat tehokkaat firmat tän vuoden loppuun mennessä laittaneet tekoälyn hoidettavaksi. VÄkeä pistetään kilsatehtaalle nyt kovaa vauhtia. Jos teet töitä tietokoneella päivittäin, työpaikkasi on vaarassa!

 

Sisältö jatkuu mainoksen alla
Vierailija
29/70 |
04.05.2025 |
Näytä aiemmat lainaukset

Eikö vaan voisi vertailla tietokantojen tiedostojen kokoa? Tai katsoa milloin muokattu. Kuulostaa liian monimutkaisilta nuo muut ratkaisut.

Vierailija
30/70 |
04.05.2025 |
Näytä aiemmat lainaukset

Vierailija kirjoitti:

Vierailija kirjoitti:

Antaisin ChatGPT:n tehdä homman.

Onpas tietoturva hyvässä kunnossa, jos chatgpt pääsisi tietokantaan käsiksi.

Hoh hoijaa...

Sisältö jatkuu mainoksen alla
Vierailija
31/70 |
04.05.2025 |
Näytä aiemmat lainaukset

Beoynd compare hoitaa homman.

Vierailija
32/70 |
04.05.2025 |
Näytä aiemmat lainaukset

Onko tää se keksinnuolijatyyppi? Missä lie hoitolaitoksessa näitä testejä tehdään?

Sisältö jatkuu mainoksen alla
Vierailija
33/70 |
04.05.2025 |
Näytä aiemmat lainaukset

Lokista

Vierailija
34/70 |
04.05.2025 |
Näytä aiemmat lainaukset

Vierailija kirjoitti:

Tiputtaisin molemmat tietokannat Word-dokumenteiksi ja sitten käyttäisin Vertaa asiakirjoja -toimintoa.

🤣

Sisältö jatkuu mainoksen alla
Vierailija
35/70 |
04.05.2025 |
Näytä aiemmat lainaukset

Oikea vastaus: mitä vidun väliä sillä on, jos joku rivi puuttuu? Kaikkeen aikuiset ihmiset tuhlaavat aikaansa. Pitäisi kysyä siltä idiootilta joka sen rivin hukkasi. Jos sillä nyt on jotain merkitystä.

Vierailija
36/70 |
04.05.2025 |
Näytä aiemmat lainaukset

Vierailija kirjoitti:

Oikea vastaus: mitä vidun väliä sillä on, jos joku rivi puuttuu? Kaikkeen aikuiset ihmiset tuhlaavat aikaansa. Pitäisi kysyä siltä idiootilta joka sen rivin hukkasi. Jos sillä nyt on jotain merkitystä.

Sinunlaistesi takia suomi vajoaa kehitysmaaksi. Tuollainen moraalittomuus on anteeksiantamatonta. Oliko kasvatuksesi täysi nolla, vastuunpakoilua ja toisten syyttelyä aina ja joka paikassa? Suututtaa sun laises tyypit, onneksi luonnon valinta karsii tuollaisia melko tehokkaasti.

Vierailija
37/70 |
04.05.2025 |
Näytä aiemmat lainaukset

Kysymys on kompa. Oikea vastaus on että refaktoroidaan hemmettiin se 90 lukulainen SQL kanta ja korvataan se cloudnatiivissa kuberneteksessä pyörivällä nosql storagella. Jos dataa häviää migraatiossa tai suorituskyky tökkii niin ei väliä koska agile ja migraation tehnyt konsulttikin vaihtoi jo firmaa ja oma cio on muutenkin kolmatta viikkoa Barcelonassa gartnerin symposiumissa ja jatkaa sieltä suoraan dreamforceen. Ens viikolla saadaan uudet puhelimet kun iPhone 16pro on jo puoli vuotta vanha. 

 

Vierailija
38/70 |
04.05.2025 |
Näytä aiemmat lainaukset

Vierailija kirjoitti:

Kysästin DeepSeek-tekoälyltä samaa:

"Hei kiinan ihme, minulla on tehtävä pieni SQL lause, voitko auttaa. On kaksi tietokantaa, TKa ja siitä tehty kopio TKb.



voi fiddy aikoinaan 90-luvun .sfnet ryhmissä aidot koodarit vertailivat itse kirjoittamiaan algoritmejä ja väittelivät niiden paremmuudesta. 

Nyt nimimerkit vertailevat kenen käyttämä AI tuottaa hienoimman näköistä scheibaa 

 

Vierailija
39/70 |
04.05.2025 |
Näytä aiemmat lainaukset

Eli aijotte poistaa jonkun tietokannasta tiedostoja siten ettei se huomais selvittämällä mistä se vois asian tarkistaa? En mene noin helppoon huijjaukseen.

Vierailija
40/70 |
04.05.2025 |
Näytä aiemmat lainaukset

Syötinpä tuon eurooppalaiselle Mistral-tekoälylle ja sieltä tuli ihan järkevää vastausta sieltäkin, ymmärrettävyydessään ehkä selkein: 

"minulla on tehtävä pieni SQL lause, voitko auttaa. On kaksi tietokantaa, TKa ja siitä tehty kopio TKb. Molemmat sisältävät 31 taulukkoa, joista yksi on nimeltään TaulVelat. Nyt joku on poistanut yhden tietuerivin TKb-tietokannan TaulVelat-taulukosta. Tee SQL-lause, jossa verrataan näiden kahden taulukon tietueet ja tulostetaan tietue, joka toisesta puuttuu."

Voit käyttää SQL-lauseketta, joka vertaa tietueita kahdesta taulukosta ja tulostaa ne tietueet, jotka puuttuvat toisesta taulukosta. Oletetaan, että taulukoissa TaulVelat on jokin yksilöivä sarake, esimerkiksi id, jonka avulla tietueita voidaan verrata.

Alla on esimerkki SQL-lausekkeesta, joka tekee tämän:

SELECT TKa.TaulVelat.* FROM TKa.TaulVelat LEFT JOIN TKb.TaulVelat ON TKa.TaulVelat.id = TKb.TaulVelat.id WHERE TKb.TaulVelat.id IS NULL;

Tässä lausekkeessa:

LEFT JOIN yhdistää taulukot TKa.TaulVelat ja TKb.TaulVelat id-sarakkeen perusteella.

WHERE TKb.TaulVelat.id IS NULL valitsee ne rivit, joissa TKb.TaulVelat-taulukossa ei ole vastaavaa id-arvoa, eli ne rivit, jotka puuttuvat TKb.TaulVelat-taulukosta.

Jos id ei ole yksilöivä sarake tai jos haluat verrata useampaa saraketta, voit muuttaa ON-ehdon vastaamaan tarpeitasi.

Kirjoita seuraavat numerot peräkkäin: seitsemän viisi kahdeksan