Hirdetés
- Ndruu: Segíts kereshetővé tenni a PH-s arcképeket!
- hcl: Amúgy mi a terv?
- sziku69: Szólánc.
- Luck Dragon: Asszociációs játék. :)
- Mr Dini: Mindent a StreamSharkról!
- Meggyi001: Amire figyelned kell Párizsban is.....
- GoodSpeed: Munkaügyi helyzet Hajdú-Biharban: észak és dél
- eBay-es kütyük kis pénzért
- Brogyi: CTEK akkumulátor töltő és másolatai
- potyautas: Cenzúra
Új hozzászólás Aktív témák
-
Novics
senior tag
válasz
Apollo17hu
#3113
üzenetére
Access nem ismeri, de van helyette MID, ami ugyanezt tudja.

-
Novics
senior tag
Megint van egy buta kérdésem.

Azt hogyan tudom elegánsan megoldani SQL-ben, hogy egy string első 3 karakterét ne vegye figyelembe. Favágó megoldás van RIGHT([id], (LEN([id])-3)), de gondolom van ennél szebb, hatékonyabb is. (Mondjuk még nem próbáltam ki, hogy működik-e.
) -
Novics
senior tag
válasz
martonx
#3108
üzenetére
Akkor már csak 80%, hogy szar az adatbázisom?

Köszönöm a "fejmosást". Sikerült megoldanom a dolgot egy új lekérdezés létrehozásával, ami nem is volt bonyolult. Bár az még nem megoldott, hogy legyen egy nyitó, és minden sorban adja hozzá/vonja ki a változást, de ez nem is feltétlenül szükséges, a lényeg, hogy az aktuális készletet kiszámolja. -
Novics
senior tag
válasz
martonx
#3106
üzenetére
Köszi a tippet.
Már telepítem is a VS-t.Így néz ki a kapcsolati ábra. Ilyenre gondoltál, nem?

Sok dolog amúgy nincsen benne, nem egy túl bonyolult valami, de később lehetne bővíteni, inkább, mint az x-edik excel tábla. Meg ebbe kevésbé tudnak belenyúlni, jobban el lehet előlük dugni a dolgokat.Egyetemen volt DB 2 félév is, de igazából a normálformák, meg a SELECT, FROM, ORDER BY, GROUP BY, WHERE... aztán kb ennyi volt. DB tervezést kb nem is tanultunk.
-
Novics
senior tag
válasz
martonx
#3103
üzenetére
Tudom, hogy nagyon excelben gondolkozok, de eddig inkább azt használtam, így nehezen tudok elvonatkoztatni tőle.
Hogy nem az access a tuti, azt én is tudom, de kb még ez a legjobb az elérhető eszközök közül. De szívesen fogadom a tippet, hogy mivel lenne érdemes próbálkozni, ami ingyenesen - és legálisan
- használható.szerk: A táblák megvannak, formok is vannak bevitelhez, egyszerűbb lekérdezésekhez is, csak ez a qrva "excel" nem megy a készlettel. A képet csak illusztrációnak raktam be amúgy, nem egy excelt várok a végén, meg is kell bitre pontosan így kinéznie.
-
Novics
senior tag
Mivel olyan rendesek vagytok, hogy segítetek, azért hozok még egy hülye kérdést.

Egy készletnyilvántartó "programot" - access - kell készítenem, és egy elég hülye kimenetet várnak el.

A készlet okoz gondot. Először a nyitót kell megadni, aztán meg a bevételnél hozzá kell adni, a kiadásnál ki kell vonni, és ezt így görgetni. Excelben ugye könnyű, pl: G7=G6+E7-F7. E7-F7 egyszerű, de hogyan tudom megadni, hogy előző rekord készletértékéhez adja hozzá?Ami még tovább bonyolítja a dolgot, hogy a táblában lesz több gyerek, és nekik több ruhafajtájuk, de nekem külön kell, hogy Roza Lindának a piros bugyogói hogyan változtak, meg külön a kék mackónadrágjai, és ugyanez a többi gyereknél is. (gyerek max 12 lesz egy időben, de ruha az kb 30) Azért még próbálok egyezkedni, hogy ésszerűsítsük a dolgot, mert ~360 oldal - jóformán üres - oldal kinyomtatása...
Az mennyire favágó megoldás, hogy táblakészítő lekérdezéssel megcsinálom a táblákat gyerekenként, ruhánként, és aztán ott számoltatom a készletet? (Amit ugye még nem tudok.
) Csak utána meg az a gond, hogy ha jön egy új gyerek, akkor új táblák kellenek, random táblanévre meg nem tudok hivatkozni. -
Novics
senior tag
Tényleg csak ennyi hiányzik. Ezt én is észrevehettem volna.
Viszont most meg azon akad ki, hogy nincsen definiálva ez a függvény. Sajnos egész héten rendezvények vannak, és most nincsen túl sok időm ezzel foglalkozni, ettől függetlenül hálás vagyok minden segítségért. Még csak most ismerkedek komolyabban az SQL-lel, ez gondolom egyből látszott a kérdéseimen. 
Ez egy dolgozói nyilvántartás, amiből jogszabálynak megfelelő adattartalommal jelentéseket kell generálnom. Az egyik kötelező adat a közalk. jogviszony kezdete. Ha a usernek volt olyan korábbi jogviszonya, ami beszámít a közalkalmazottiba, akkor annak a kezdődátuma kell, ezek közül természetesen a legkorábbi. (min(kmh.kezdete) where beszam = yes) Ha pedig nem volt ilyen jogviszonya - mert vannak olyanok, akiknek ez az első munkahelye, vagy nem beszámítható egyik korábbi sem -, akkor pedig az itteni jogviszony kezdődátuma kell. (szemad.jogvisz_kezd) Vissza kell kapnom mind a 238 dolgozót, viszont mindegyiket csak egyszer. Elég csak egy olyan tábla, ahol a név és a dátum szerepel, azt már be tudom rakni a jelentésbe. Ami maga szintén elég baltával faragott, biztosan van elegánsabb megoldás, de egyelőre működik, a csinosítás ráér.
Még mindig jöhetnek könyv, weboldal tippek, amin el lehet indulni felfedezni az SQL rejtelmeit.

-
Novics
senior tag
válasz
bambano
#3087
üzenetére
3 lekérdezés? Egyikben a szemad-ban a névhez tartozó jogvisz_kezd, a másikban a kmh-ben a dolg-hoz tartozó min(kezdet) where beszamithato. Mi a harmadik?
Találtam egy jónak tűnő leírást az unionról, de még nem volt időm átrágni magamat rajta. Arra gondoltam, hogy berakom egy táblakészítő lekérdezésbe, aztán utána arra is ráeresztek egy min()-t. Ez az igazán kőbalta, vagy inkább sima husáng megoldás!
-
Novics
senior tag
Az NVL-nél valahogyan meg kellene adni, hogy az ahhoz az emberhez tartozó jogvisz_kezd-et adja meg, akinél nincsen kmh.kezdete. Most eldobja magát, hiányzó művelet miatt. De itt ugyanúgy elakadok, hogy hogyan tudnám ezt megmondani.bambano Még csak nem is hallottam róla - ez nem teljesen igaz, mert valahol láttam már, de nem néztem még meg -, de ez működik.
Már csak az a gond, hogy akinek mind a két táblában van valid értéke, az kétszer szerepel. Sajnos allekérdezésbe nem lehet berakni, pedig próbáltam. 
Tehát vagy az kellene megmondani, hogy a 2 táblából a kisebb értéket hozza ki, vagy pedig a kmh-s értéket, ha az valid, mivel az minden esetben kisebb. -
Novics
senior tag
Jönnék egy újabb kérdéssel.

Van egyszer a fentebb megoldott lekérdezés, ahol megkapjuk a legkorábbi kezdődátumot. De vannak olyan userek, akiknél nincsen ilyen dátum, hozzájuk egy másik táblázatban lévő kezdődátumot kellene beírni.
Van tehát 2 tábla:
szemad - itt található a jelenlegi kezdődátum
kmh - itt vannak felsorolva a korábbi munkahelyek, innét kellett a legkorábbit kikeresni
Nekem a jelentésre a kezdődátumhoz vagy a kmh-ban szereplő legkorábbi dátumot, vagy ha ilyen nincsen, akkor a szemad kezdődátumot kell kiíratnom. A két tábla a szemad.id = kmh.dolg mentén van összekapcsolva.Az IIF-re, és beágyazott lekérdezésekre gondoltam - de gondolva az előző megoldásra, lehet, hogy megint ágyúval megyek verébre -, amivel megvizsgálom, hogy a kmh-ban van-e érték, ha nincs, akkor a szemadból kérdezem le a jelenlegi kezdődátumot, ha van érték, akkor az ottani legkisebbet keresem meg.
SELECT szemad.id, szemad.nev, IIF(ISEMPTY((SELECT kmh.kezdete FROM kmh INNER JOIN szemad ON kmh.dolg = szemad.id WHERE kmh.beszamithato =YES)),(SELECT szemad.jogvisz_kezd FROM szemad),(SELECT kmh.kezdete FROM kmh INNER JOIN szemad ON kmh.dolg = szemad.id WHERE kmh.beszamithato =YES))
FROM szemad INNER JOIN kmh ON szemad.id = kmh.dolg
GROUP BY szemad.nev, szemad.id;Azt kapom vissza, hogy ez az allekérdezés legfeljebb egy rekordot képes visszaadni. Nem tudom, hogy ezt pontosan hogyan is kell érteni, de arra magamtól is rájöttem, hogy ez így nem lehet jó. Az allekérdezések ugye nem egy-egy értéket adnak vissza, szóval valahogyan meg kellene mondani nekik, hogy a külső SELECT szemad.id-hoz igazodó értéket adják csak meg. Ha a szemad.nev/id-t átneveztem AS-zel, és az allekérdezésekben meg a WHERE záradékban beírtam, hogy kulso_nev = szemad.nev, akkor meg azért rinyált, hogy a kulsp_nev nem szerepel összesítő függvényben, akkor sem, ha mindegyik függvénybe beleírtam. Szóval totális a káosz, és már nincsen több ötletem.
Közben azért guglizok, és felmerült, hogy esetleg valami olyan megoldás kellene, mint a programozásnál a szubrutinok. Lehet olyat, hogy megírja az ember a 3 lekérdezést, elnevezi őket, és utána csak rájuk hivatkozik? Gyanítom, hogy a külső FROM-ba bele kellene írni ezeket a lekérdezéseket is.
Van valami jó oldal, ahol érthetően, de nem 28ezer oldalon keresztül bemutatják a lekérdezéseket?
A Taylor-féle SQL for Dummies mennyire jó, mennyire szakmai? -
Novics
senior tag
Üdv szakik!
Remélem hajtotok el a gagyi access-es kérdésemmel.

Egy táblában vannak userek, és azok adatai, amik közül kettő érdekes a kezdő dátum és persze a név. Mindenkihez tartozhat több kezdődátum. Nekem össze kéne szednem, hogy userenként melyik a legkorábbi kezdődátum. Excelben simán megoldom, és lehet, hogy ez kavar be, hogy itt is ugyanúgy akarom, de egyszerűen elakadtam. A DMIN függvény kéne ha jól gondolom, de nem tudom neki megadni a tartománynál, hogy userenként keresse a legkisebb értéket, és ne az egész mezőben. Excelben csinálok egy táblát, amiben csak egyszer szerepel minden user, és megadom, hogy mindig az adott sorban lévő user nevénél keresse a minimumot. Gyanítom, hogy itt valami másik megoldás lesz, másik irányba kell elindulni.De merre?

Új hozzászólás Aktív témák
- ThinkPad (NEM IdeaPad)
- Internet Rádió építése (hardver), és programozása
- Elektromos autók - motorok
- Víz- gáz- és fűtésszerelés
- E-roller topik
- CURVE - "All your cards in one." Minden bankkártyád egyben.
- Nintendo Switch
- Debrecen és környéke adok-veszek-beszélgetek
- Samsung Galaxy Z Fold7 - ezt vártuk, de…
- Subaru topik
- További aktív témák...
- Bomba ár! Lenovo ThinkBook 15 G2 - i5-1135G7 I 16GB I 512GB SSD I 15,6" FHD I Cam I W11 I Gari!
- Bomba ár! Dell Latitude 3520 - i5-1135G7 I 16GB I 256SSD I HDMI 15,6" FHD I Cam I W11 I Garancia!
- Bomba ár! Dell Latitude 5420 - i5-1145G7 I 16GB I 256SSD I HDMI I 14" FHD I Cam I W11 I Garancia!
- Bomba ár! Dell Latitude 5480 - i5-7GEN I 8GB I 128SSD I 14" FHD I HDMI I Cam I W11 I Garancia!
- Legion 5 Pro 16ACH6H 16" QHD+ IPS Ryzen 5 5600H RTX 3060 16GB 512GB NVMe gar
- ÚJ Lenovo ThinkPad T16 Gen 4 - 16" WUXGA - Ultra 7 255U - 32GB - 1TB SSD - Win11 - 3 év garancia
- ÁRGARANCIA!Épített KomPhone Ryzen 5 7600X 32/64GB RAM RTX 5070 12GB GAMER PC termékbeszámítással
- Bomba ár! Lenovo ThinkPad T14s G1 - i7-10G I 16GB I 512GB SSD I 14" FHD Touch I Cam I W11 I Gari!
- Samsung Galaxy S23 Ultra 5G 256GB, Kártyafüggetlen, 1 Év Garanciával
- Telefon felvásárlás!! iPhone 12 Mini/iPhone 12/iPhone 12 Pro/iPhone 12 Pro Max
Állásajánlatok
Cég: Laptopszaki Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Tudtam én, hogy valami nem kóser. 


)

) Csak utána meg az a gond, hogy ha jön egy új gyerek, akkor új táblák kellenek, random táblanévre meg nem tudok hivatkozni.


Már csak az a gond, hogy akinek mind a két táblában van valid értéke, az kétszer szerepel. Sajnos allekérdezésbe nem lehet berakni, pedig próbáltam.
Ez így túl egyszerű. 

