Tervehdys kaikille

Olisin kysellyt SQL ohjelmoinnista.Tietääkö kukaan mikä kysely olisi oikein jos kysytään että laadi SQL kysely joka laskee kirjojen kokonaismäärän varastossa.
Olen yrittänyt laittaa
SELECT *
FROM "varasto"
mutta tämä ei mene läpi
onko johonkin kohtaan kirjoitettava "lukumaara" ja onko kyseessä ehkä SUM tai WHERE lauseke
SELECT *
FROM "varasto" "lukumaara" ei myöskään tuota tyydyttäävää lopputulosta
211053
Äänestä

Muut lukivat myös

Vastaukset 21

Vanhimmat

Riippuu ainakin tietokannasta, sen sijainnista, sekä tietokannan kentistä, mitä SQL-kyselyyn pitää kirjoittaa.

Äänestä

SELECT SUM(column_name)
FROM table_name
WHERE condition;

Äänestä

Varasto-taulun kaikki rivit saat laskettua SELECT COUNT(*) FROM varasto vaan onko varasto-taulussa muutakin kuin kirjarivejä tai esim rivillä kirjojen lukumäärä?

Äänestä
  • Eipäs kun näin:
    SELECT COUNT()
    FROM Varasto;

    Äänestä

Jos kirjoitan
SELECT *
FROM "varasto"

Niin vastaus on vihreällä värillä:
Your SQL statement executed successfully COUNT 9

MUTTA

Your SQL statement produced wrong result (punaisella värillä)
Expected result is 4091

Äänestä

SELECT *
FROM "varasto";
En ymmärrä koska valitaan kaikki varastosta mutta tulos ei anna 4091 vaan 9

Äänestä

Tietokanta KIRJA:
kirjaid integer NOT NULL
nimi character varying 32 NOT NULL
tekijaid integer
kustantajaid integer
sivuja integer
hinta double precision
julkaisupvm date
Tetokanta Kirjailija:
tekijaid integer NOT NULL
sukunimi character varying 32 NOT NULL
etunimi character varying 32 NOT NULL
Tetokanta Kustantaja:
kustantajaid integer NOT NULL
nimi character varying 32 NOT NULL
osoite character varying 32
postinro character varying 32
toimipaikka character varying 32
Tietokanta Varasto:
varastoid integer NOT NULL
kirjaid integer
lukumaara integer NOT NULL

Äänestä

SELECT lauseke jossa - * / niin FROM ja WHERE
mutta tämän pitäisi olla tosi simppeli mutta ei vain onnistu

Äänestä

Eli onko kyseessä SELECT * vai COUNT vai SUM lauseke ja pitääkö olla mukana myös lukumaara

Äänestä
  • Tietysti pitää mukana olla, miksi edes kyselet sellaista.

    Äänestä

  • Mitkä on kantapalvelimen suojaukset? ei sieltä mitä vaan voi kysyä, kun lentää pihalle, haitta yhteytenä.

    Äänestä

  • SELECT COUNT()
    FROM Varasto;

    Äänestä

Löytyihän se kaivattu tietokanta-schema (taulut ja niiden kentät) eli nuo kirja, kirjailija, kustantaja ja varasto on tietokannan tauluja ja kysytty select taulusta varasto on yksinkertaisesti:

select sum(lukumaara) from varasto

koska siinä kaikki on kirjoja, tässä ei tarvita where-lauseketta.

Äänestä
  • Mikä olisi tämän ratkaisu:
    Laadi SQl-lause, joka tulostaa Kirja taulusta sellaisten kirjojen keskihinnan, jotka maksavat yli 20 mutta alle 30.
    Olisiko tännepäin kuten:
    SELECT AVG("hinta") FROM ....... >20 AND <30;

    Äänestä

Lasketaanko tässä nyt nimekkeiden määrää vai kaikkien kirjojen yhteismäärää, sillä tietokannan mukaanhan yhtä nimekettä voi olla useampi kappale.

Äänestä

hrmm eiköhän tuon parilla piuhalla ja aimo kronksautuksella saa aikaan

Äänestä

Se menikin läpi pelkällä varastolla eikä kirjaa tarvittu mainita ollenkaan eli
SELECT SUM("lukumaara") FROM varasto; eli pelkästään varastossa oli tieto kirjojen lukumäärästä.
Joskus yksinkertainen on välillä vaikeaa hoksata.

Äänestä
  • Kiitos hgfdsasdf koska nyt huomasin kirjoituksesi ja olit oikeassa.

    Äänestä

Vain homot käyttää 70-luvun fossiilista muinaisjäännettä nimeltä SQL. NoSQL on tämänpäivän trendi ja tulevaisuudessa kukaan ei enää käytä mitään muuta kuin sitä.

Äänestä
  • Tuo SQL käyttäjien seksuaalinen suuntautuminen tuskin pitää paikkaansa, mutta muilta osin hyvinkin mahdollista.

    Äänestä

Kommentoi aloitusta


Sqlbasic kirjoitti:

Olisin kysellyt SQL ohjelmoinnista.Tietääkö kukaan mikä kysely olisi oikein jos kysytään että laadi SQL kysely joka laskee kirjojen kokonaismäärän varastossa.
Olen yrittänyt laittaa
SELECT *
FROM "varasto"
mutta tämä ei mene läpi
onko johonkin kohtaan kirjoitettava "lukumaara" ja onko kyseessä ehkä SUM tai WHERE lauseke
SELECT *
FROM "varasto" "lukumaara" ei myöskään tuota tyydyttäävää lopputulosta

Anonyymi
5000

Ilmoita asiaton sisältö

  • Sisältää materiaalia, joka on loukkaavaa, herjaavaa, rasistista, uhkailevaa tai ahdistelevaa.

  • Materiaali sisältää nimiä, yhteystietoja tai muita henkilökohtaisia tietoja. Julkisuuden henkilöistä, julkisissa viroissa toimivista ihmisistä sekä yritysten vastuuhenkilöistä saa keskustella työhön liittyen. Myös yksityiselämään liittyvistä asioista voi keskustella siltä osin, kuin niistä on julkisesti kerrottu.

  • Sisältää lapsille haitallista tai heiltä kiellettyä materiaalia. Seksuaalinen sisältö on sallittua aiheeseen tarkoitetuilla palstoilla, joiden ikäraja on 18 vuotta.

  • Lainvastaista sisältöä voi olla mm. yksityiselämää loukkaavan tiedon levitys, kiihottaminen kansanryhmää vastaan, laiton uhkaaminen, alaikäisiin liittyvä seksuaalinen sisältö/grooming, petokset, identiteettivarkaudet, kunnianloukkaukset ja tekijänoikeusrikkomukset.

  • Sisältö ei liity palstan tai keskusteluketjun aiheeseen.

  • Viesti ei ole suomea tai ruotsia (pl. International Forums), se sisältää mainontaa, se sisältää tekijänoikeuksin suojattua materiaalia, se on massapostitus tai jokin muu syy.

Jaa keskustelu