Keresés


Toplista

Toplista
  • betöltés...

Magántanár kereső

Ha szívesen korrepetálnál, hozd létre magántanár profilodat itt.
Ha diák vagy és korrepetálásra van szükséged, akkor regisztrálj be és írd meg itt, hogy milyen tantárgyban!

SQL, Jó a feladat?

291
Adatbázis feladat. Jól oldottam meg a feladatot?
Adatbázis:
create database tanker
character set utf8
collate utf8_hungarian_ci;

create table szemelyek (
az int not null primary key auto_increment,
nev varchar(50),
telepules varchar(50),
cim varchar(50),
belepes date
);

insert into szemelyek
(nev, telepules, cim, belepes)
values
('Nagy József', 'Szolnok', 'Nyár u. 3.', '2010-03-17'),
('Pár Elek', 'Debrecen', 'Tél u. 3.', '2005-01-01'),
('Tér Ferenc', 'Szolnok', 'Kossuth u. 5.', '2000-02-01'),
('Dolog Károly', 'Szeged', 'Almás tér 2', '2007-05-01'),
('Tronf Mihály', 'Debrecen', 'Lát u. 45.', '2005-02-01'),
('Ab Béla', 'Szolnok', 'Bach u. 91', '2000-07-01');

--Feladat:
Jelenítse meg, a szegedi és szolnoki dolgozók közül azokat, akik 2005 után jöttek a céghez.
select nev, telepules
from szemelyek
where telepules = "Szeged" or "Szolnok"
and belepes > "2005";


Előre is köszönöm a segítséget!
Jelenleg 1 felhasználó nézi ezt a kérdést.
0
Középiskola / Informatika

Válaszok

2
Majdnem jó.
Mielőtt egy táblán változtatni akarsz kell a:
use db

esetedben:
use tanker;
create table...


SQLben én az ilyen or and feltételeket mindig egyértelmű zárójelek közé raknám, hogy mi tartozik egyben.
azaz a te esetedben:
where (telepules = "Szeged") or (telepules = "Szolnok") and (belepes > '2005-12-31');
vagy:
where (telepules = "Szeged") or (telepules = "Szolnok") and (YEAR(belepes) > 2005);

Miért nem használsz valami sql-es tervező progit? pl. MySql Workbench
Módosítva: 1 éve
0

> where telepules = "Szeged" or "Szolnok"

Ilyen nem létezik. A korábban érkezett javaslat mellett még lehet így is:

where telepules in ('Szeged', 'Szolnok')
0