Megválaszolatlan hozzászólások | Aktív témák Pontos idő: szomb. ápr. 27, 2024 7:30



Hozzászólás a témához  [ 5 hozzászólás ] 
MySQL adatbázis - C programozás 
Szerző Üzenet
ezüst tag

Csatlakozott: szer. jún. 28, 2006 8:46
Hozzászólások: 12
Hozzászólás 
Na, sikerült összehozni, igaz, hogy barkács módszerrel, de azért leírom, hátha még valakinek a segítségére lehet.

GROUP BY és MAX() függvényekkel csináltam egy olyan lekérdezést, amiben azonosítóra csoportosítottam és a dátumokból a maximális értéket vettem. Az eredményt egy átmeneti táblába mentettem. Ebbe az átmeneti táblába felvettem még egy mezőt, ahova összefűztem a dátum és az azonosító mezőket. Ezt az összefűzést megcsináltam az eredeti "nagy" táblában is. Végezetül, az új (dátum+azonosító) mezőt használtam kulcsnak és az eredeti táblából hozzákerestem az adott dátumhoz, azonosítóhoz tartozó státuszt.

Biztos vagyok benne, hogy lehet egyszerűbben is, de ez is kiválóan működött. :)


kedd okt. 17, 2006 15:15
Profil Privát üzenet küldése
ezüst tag

Csatlakozott: szer. jún. 28, 2006 8:46
Hozzászólások: 12
Hozzászólás 
Közben támadt egy ötletem.

GROUP BY, MAX() ...stb

Mindjárt kipróbálom.


kedd okt. 17, 2006 13:39
Profil Privát üzenet küldése
ezüst tag

Csatlakozott: szer. jún. 28, 2006 8:46
Hozzászólások: 12
Hozzászólás 
Sziasztok!

Egy kis segítséget szeretnék kérni (nem akartam új topic-ot nyitni neki, ezért írom ide).

Adott egy tábla kb. 130000 rekorddal. A jelen esetben lényeges mezők nevei legyenek mondjuk "azonosito", "status", "datum".

"azonosito" sajnos nem egyedi azonosító, ezért bizonyos esetekben többször is előfordul a táblában.
A feladat az lenne, hogy le kell kérdezni "azonosito" egyedi értékeit és a hozzájuk tartozó "status"-t. Ahol "azonosito" csak egyszer szerepel, nincs gond. Ahol viszont többször szerepel, ott azt kellene kiválasztani, ahol a "datum" a legnagyobb. Pl. ha a "125"-ös azonosító szerepel "06.01.25", "06.05.01" és mondjuk "06.08.25" -i dátummal is, akkor a 06.08.25-ös rekordhoz tartozó státuszra lenne szükségem.

Esetleg a DISTINCT -tel lehet valahogy variálni, hogy azt adja vissza, ami nekem kell jelen esetben? Ha nem, hogyan kell ezt SQL-ben megfogalmazni?

Köszi előre is!
(remélem érthetően írtam)


kedd okt. 17, 2006 13:30
Profil Privát üzenet küldése
a fórum lelke
Avatar

Csatlakozott: szer. márc. 24, 2004 13:43
Hozzászólások: 8673
Tartózkodási hely: Ahol fikázni könnyű alkotni nehéz!
Hozzászólás 
Séma szinten kell egyezőnek lennie, vagy adatszinten?
Vagyis egy szinkronizációt kell írnod???
Mindenképpen c-ben kell? Mert vannak más nyelvek, és hozzájuk fejlesztő eszközök amellyel némileg könnyebb dolgod lenne.

De ha c a kötelező:
http://dev.mysql.com/doc/refman/5.0/en/c.html


szomb. okt. 07, 2006 10:07
Profil Privát üzenet küldése ICQ Honlap
ezüst tag

Csatlakozott: szer. márc. 24, 2004 13:43
Hozzászólások: 12
Hozzászólás MySQL adatbázis - C programozás
Helló!

Az lenne a feladatom, hogy MySQL adatbázisokat hasonlítsak össze, tegyek egyezővé, kölönböző szervereken. Mindezt C nyelven kellene megvalósítani egy szerveren futó programmal, ezt kellene megírni.
Tudnátok ebben segíteni?
A lényeg az lenne, hogy meg tudjam írni ezt a programocskát, hogy a későbbiekben fejleszteni tudjam. Tehát leírásokra lenne szükségem első sorban.

Köszi!

Laci


szomb. okt. 07, 2006 9:13
Profil Privát üzenet küldése
Hozzászólások megjelenítése:  Rendezés  
Hozzászólás a témához   [ 5 hozzászólás ] 

Ki van itt

Jelenlévő fórumozók: nincs regisztrált felhasználó valamint 25 vendég


Nem nyithatsz témákat ebben a fórumban.
Nem válaszolhatsz egy témára ebben a fórumban.
Nem szerkesztheted a hozzászólásaidat ebben a fórumban.
Nem törölheted a hozzászólásaidat ebben a fórumban.

Keresés:
Ugrás:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software for PTF.
Magyar fordítás © Magyar phpBB Közösség