Hirdetés
- Luck Dragon: Asszociációs játék. :)
- sziku69: Fűzzük össze a szavakat :)
- sziku69: Szólánc.
- Brogyi: CTEK akkumulátor töltő és másolatai
- Lalikiraly: Kinek milyen setupja van?
- laskr99: DFI és DFI Lanparty gyűjteményem
- gban: Ingyen kellene, de tegnapra
- GoodSpeed: Keychron V6 Max (HU) Mechanikus vezetéknélküli billentyűzet (Bluetooth, RF, USB)
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Oldman2: A KOReader ebook olvasó program
Új hozzászólás Aktív témák
-
kem
addikt
Sziasztok!
RDS MySQL 5.7-et probalok migralni epp titkositott RDS-re, es a kovetkezo ket problemaba futottam:
longtest and mediumtext partially-supported. Fogalmam sincs, hogy ez mit jelent. Gondolom bizonyos mezo tul nagy a migraciot vegzo alkalmazasnak (ASW DMS). Valaki ismer erre valamilyen mogoldast illetve dolgoztatok mar Amazon Database Migration Service-el? Esetleg mas migracio kozben kitalalt megoldas is erdekelhet, gondolom van akinek ez rogton ismeros.Elore is koszonom a valaszokat!
-
Louro
őstag
válasz
dellfanboy #4297 üzenetére
Valamilyen SQL megoldást nem támogatna a munkáltatód? Eleve 3 000 000 sorról beszélünk nagyjából. Access is elbírná, de hosszú távon lehet jobb lenne egy tartósabb megoldás.
Na meg rádobtok egy Tableau-t vagy PowerBI-t és nagyon csinos tud lenni
Az SQL, ha még nagyon új, akkor sqlzoo.net alapokra szerintem az egyik legjobb.
Access nekem a folyamatos Compact miatt volt nyűg, mert mindig nagyra hízott.
-
dellfanboy
őstag
Nembiztos, hogy jo helyre irok, de nem talaltam jobb topic-ot
Szoval a problemam roviden, hogy kezdem kinoni az excelt. Tul sok adatom van. Jelenleg van 12 file-om ami megfelel 1-1 honapnak, darabja kb 250 000 sor. Ezt szeretnem access be importalni, ugy hogy 1 tablam legyen ossvisz (12ho adataval) valamint 1 honap adata (jelenlegi targy honap) live-nak kellene lenni. Ha valtozik az adott honaphoz tartozo xls akkor az adatbazisban is valtoznak a dolgok.
Ahogy nezem access-be 3 mod van importra 1uj tablaba importal, 2hozzaadja 1 jelenlegi tablahoz,3 link .
Amit csinaltam idaig linkeltem [3] a targyohonaphoz tartozo file-t hogy ez live maradjon es ehhez hozzaadnam a maradek statikus honapokat [2] de nem jon ossze mert ;operation most use an updateable query.’
Ezt a hibauzenetet hogy tudnam megoldani, probaltam google-zni de meg nem jottem ra. Van tippetek?Esetleg ha az otletem nem jo, akkor van tippetek merre induljak el? koszi
-
bandi0000
nagyúr
válasz
bandi0000 #4295 üzenetére
na szóvalEz a lekérdezésem@Query("SELECT * FROM plants WHERE plants.start_date <= :yearAndMonth and plants.end_date >= :yearAndMonth")
LiveData<List<PlantEntity>> getAllPlantsByDate(String yearAndMonth);A Dátum formátum: 2019-05-05
És amit átadok neki paramétert : yearAndMonth ott ezt kapja: 2019-05*És ugye mondtam, hogy a felső határérték dátumnál megáll és annyiadik napig adja vissza az értéket amíg kell, de az alsónál meg nem ad vissza semmit a kezdő hónapraTehát mikor a yearAndMonth 2019-05 akkor azokat a rekordokat nem kapom meg, amik 2019-05-08-tól érhetők elNa mire leírtam rájöttem mi a baj, a kezdő dátum az kisebb és nagyobb is lehet mint az aktuális hónap , a vég dátum meg csak nagyobb lehet, így be kellett még raknom egy vagy feltételt és jó lett
-
Ispy
nagyúr
válasz
bandi0000 #4292 üzenetére
1. Miért string a dátum?
2. Lekédezéskor miért nem konvertálod a stringet dátumra?
3. Miért string a dátum?Ha dátum lenne nem kéne konvertálni és mennének rendesen a dátum keresések...
4. Stringből is lehet midenféle mókolással megkapni az évet és hónapot, year, month függvénnyel, pl. ki tudod szedni, hogy 201907 vagy 201912, csak amikor összefűződ garantálni kell, hogy a hónap 2 karakter legyen: eléraksz 00-át és levágod jobbról 2 karakter hosszan RIGHT-tal. Persze előtte garantálni kell, hogy dátumként értelmezhető, jó lenne többet tudni az egészről. -
bandi0000
nagyúr
Ismét kérnék egy kis segítséget, nem igazán jövök rá mi a probléma
Van egy tábla, abban 2 mező, ami String-ként tárolja a dátumokat 2019.01.01 formában
az egyik mezőben a 2 dátum Pl 2019.07.7 és 2019.12.12
Na már most, nekem a napok nem lényegesek, csak le kell kérdeznem azokat a termékeket, amik beleesnek 1 adott hónapba
Ezt a between-nel oldottam meg, mégpedig úgy, hogy az adott hónaphoz, ami pl 2019.09 hozzá fűztem még 1 *-ot, hogy a nap nem számít nekem, ez igazából tök jól működik a vég dátumhoz, mert a december 12-ig elérhető termékeket még megkapom
Viszont a júliusikat már nem adja vissza, gondolom itt a trükközésem kavar be, próbáltam a <=-vel is, de azzal se mentem semmire
Segítséget előre is köszönöm
*Ha nem érthető amit próbáltam leírni, akkor szóljatok és megpróbálom érthetőbben
-
Apollo17hu
őstag
Ha a lekerdezes WHERE zaradekaban szursz a kivalasztott hozzavalokra, az nem jo?
-
bandi0000
nagyúr
Android Room-ot használok
Magyarázat kedvéért, pl
Van egy ételek tábla és egy hozzávalók, több a többhöz kapcsolat
Azt szeretném kivitelezni, hogy pl egy Checlist alapján kiválasztom a hozzávalókat, amiket belerakok egy tömbbe, vagy a nevét ami String, vagy az id-t ami Long, és egy lekérdezésbe meg le akarom kérdezni azokat az ételeket, amik tartalmazzák ezeket a hozzávalókat
-
bandi0000
nagyúr
válasz
Apollo17hu #4285 üzenetére
köszi, de hogy lehet megadni neki paraméterként a tömböt? Vagy létezik, hogy csak úgy lehet hogyha átalakítom minden sorát SQL where feltételnek és azt adom be egy egész stringként?
-
bandi0000
nagyúr
Nem vagyok annyira penge a bonyolultabb lekérdezésekben, de ezt meg lehetne valahogy oldani?
2 tábla van, több a többhöz kapcsolat, szóval van köztük még egy join tábla is
Ki kellene szednem az első táblából azokat az elemeket természetesen ismétlés nélkül, amibe benne vannak a második táblából az elemek, ezt pedig egy tömbben adnám meg, vagy a mező értékét, vagy csak az indexeket, ahogy egyszerűbb, de valami ilyesmit kellene kiviteleznem
-
martonx
veterán
válasz
bandi0000 #4281 üzenetére
Ha jól értettelek, akkor ezek között 1-1 kapcsolat van. Azaz milyen normál formát szegnél meg ezzel? Semmi értelme az 1-1 kapcsolatot ily módon szétbontanod (persze lehet értelme, ha annyira óriási lenne a tábla mondjuk 100 mezővel, vagy ha lenne egy gyakrabban változó mező struktúra, és egy fixebb).
Termék - id - név - dátum1 - dátum2 - kép1 - kép2
A fentit semmi értelme így szétbontanod:
termék - id - név
termékid - dátum1 - dátum2
termékid - kép1 - kép2
-
válasz
bandi0000 #4277 üzenetére
Szia!
A képeknek és a dátumoknak van köze egymáshoz? Arra gondolok, hogy a kezdet az éretlen fénykép, a vég pedig az érett?
Mi a cél?Elvileg lehet 1 táblában is, de kettőben is. Pl, ha kettő, akkor az 1-esben tárolnám a zöldségeket azonosítóval, névvel kezdet, vég dátummal. A másik táblában pedig lenne a zöldségazonosító a képkészítés dátum és a kép. A kettőt a zöldségazonosító és a dátum mezőkkel kapcsolnám össze.
-
bandi0000
nagyúr
Sziasztok
Kicsit belekavarodtam ebbe az adatbázis tervezésbe
Ha van egy táblám amibe pl zöldségeket tárolok, ehhez el kell tárolnom 2 dátumot kezdő és vég, illetve 2 képet érett és éretlen állapotban, ehhez kell egyáltalán 3 tábla? valamiért úgy csináltam de most hogy gondolkodok lehet felesleges, mert ugye 1az1 kapcsolat lenne köztük
-
rikxjeee
tag
válasz
kezdosql #4272 üzenetére
"Az altalatok istenitett sqlfiddle mogott valodi szimulacio van?"
...
http://sqlfiddle.com/about.htmlAzt pedig, hogy melyik rendszerben hogy működik az ilyesmi, az adott dialektus dokumentációjában keresd, az sqlfiddle nem erre való.
-
kezdosql
tag
Az altalatok istenitett sqlfiddle mogott valodi szimulacio van?
Tehat, amikor felajanlja, hogy kulonbozo programok kulonbozo verzioi kozott lehet valasztani, akkor valodi ki lehet deriteni, hogy pl. datumkezelesnel ami mukodik egy adott programban, miert nem, vagy milyen modositassal mukodik masik programnal?
-
bambano
titán
válasz
tototos #4263 üzenetére
ha nincs szerveretek, akkor a kliens gépeket se mentitek?
mert egyébként ha legalább egy mentést tároló szerver lenne, oda felrakhatnád az adatbáziskezelőt is.szóval én vennék egy hp microservert, nem olyan eszement pénz, felraknám rá az sql szervert, oszt jónapot. sok diszket, arra mehet a backup a kliensekről.
-
tototos
addikt
A nagy probléma a jelenlegi rendszernél, hogyha valami lesz a kilens géppel az összes adat ott van rajta és elég körülményes azokból visszaállítani a programot működőképessé. Megoldás lehet a biztonsági mentés minden nap végén, de jobb lenne egy olyan megoldás hogy ha az egyik kliens nem működik akkor a másikat bekapcsolva máris lehet tovább dolgozni. Erre lehet megoldás egy szerver üzemeltetés, de egy adatbázis szerverért nem biztos, hogy gazdaságos. Ezért gondoltam valami netes megoldásra. A net ígyis mobilnet, és ha később van számlázva az kevésbé gond, mintha abszolút nincs mert kiesett a kliens gép.
-
Ispy
nagyúr
válasz
tototos #4259 üzenetére
Akkor mehet fel azure-ba, van elastic előfizetés, csak a használat után fizetsz, nézzetek utána.
Migrálni is egyszerű, simán SSMS-ből fel lehet tolni az adatbázist.
Persze arra készüljetek, ha nincsen net, nincsen munka, szóval nem árt, ha van B tervnek egy mobilnet.
Illetve van
150 EUR170 EUR értékű ajándék az elején (30 napig), szóval nem kerül semmibe csinálni egy tesztet, hogy milyen a sebbesége a programnak még mielőtt mindent átpakoltok felhőbe. Ha kevés a szufla, akkor lehet nagyobb csomagra előfizetni nagyobb sávszélért, de 5-10 fős cégeket simán el szokott vinni elég jó sebességgel. -
tototos
addikt
Sziasztok!
Nem biztos, hogy a legjobb topikot találtam meg, de reméle mtudtok segíteni. Számlázó programhoz lenne szükséges sql adatbázisra. Jelenleg a kliens pc van az adatbázis de ez nem túl biztonságos, plusz felmerült az hogy több gépről is lehessen számlázni és ilyenkor szükséges a megosztott adatbázis. A szervert egyelőre kicsit ágyúnak érzem, van valmilyen megbízható felhő szolgáltatás ahol bérelni lehet adatbázis hozzáférést?
Köszönöm
-
Draken
őstag
Sziasztok!
Egy kis segítséget kérnék, mssql fronton. Az alább láthatót kellene úgy megvariálnom, hogy ne az elmúlt 60 napot törölje, hanem egy adott dátumtól visszafele az összeset. Mit kéne a getdate elé beillesztenem?
delete from StatisticsField where DateGolden<getdate()-60
-
martonx
veterán
válasz
kezdosql #4251 üzenetére
Igen, profi vagyok, de ettől még nem én írtam az sqlite-ot. A lekezelő válaszaim pedig magadnak köszönheted mert folyamatosan kavarogsz, és össze-vissza kérdezel. Megkérdezted, hogy miért stringben tárolja az sqlite a dátumokat, miközben így utólag meg már azt kérdezed, hogy oké, de hogy kell kezelni sqlite-ban a dátumokat (ezzel kapcsolatban én is csak google-özni tudnék, mert sose használtam sqlite-ot). Nagyon nem mindegy a kérdés, mert hülye kérdésekre nyilván csak hülye válaszok tudnak érkezni.
És a drupal most komolyan hogy jön ide? Igen CMS-esekkel könnyen beleszalad ilyenbe az ember, de mi köze ennek bármihez, amiről eddig szó volt?
Azt látom, hogy csak kötözködni jössz ide, nem pedig tényleges tanácsokért. Én amikor már nincs min kötözködnöd, akkor bedosz, egy de szar a drupal kijelentést, fogalmam sincs miért
Mindenestre engem szórakoztatsz, szóval állok rendelkezésedre.
-
kezdosql
tag
válasz
martonx #4246 üzenetére
A nekem címzett kérdésed félre ment, talán ezt a kérdést az sqlite fejlesztőinek kellene feltenned, nem én készítem az sqlite-ot
A lekezelo valaszaidbol ugy tunt, teljesen profi vagy, gondoltam meg tudod mondani, milyen fuggvenyekkel vagy hokusz-pokusszal mukodik a dolog, mert a datum kezeles egy alapveto igeny.
... arra valóban az annyit ócsárolt MS Access a legalkalmasabb.
Sokadszorra irom le, hogy olyan megoldas kell, ahol a user nem fer hozza az adatokhoz.
Milyen verziókkal vannak a gondok?
Az allando es teljesen hektikus frissitesekkel.
Egy pelda, egyik kis cegnel drupalt hasznalnak, a drupalhoz erto admin havi par oraban van fizetve.
Biztonsagi res vagy mas dolog miatt frissitenie kellett a mysql-t, amihez a drupalt is frissiteni kellett, majd kiderult, hogy nemelyik modul, amit hasznaltak, az uj verziokkal meg nem mukodik, igy ket hetig szenvedett a zadmin elvtars, amig talalt olyan mysql es drupal verziot, amivel minden modul ismet mukodott, hogy vegre ismet mukodjon a weboldal.
Amikor a fonokseg kerdezte, hogy miert volt ket hetig problemajuk az ugyfeleknek a webbel es ezt elmondta, kozoltek vele, hogy ez azt bizonyitja, hogy o csinalta az egeszet, csak azert, hogy ket heti fizetest kicsikarjon toluk, de errol ne is almodjon.Na, pont ilyet lehet kikerulni az altalad is emlitett C#-os vagy mas progik leforditasaval, attol kezdve ott az exe, adott a kornyezet, es teszi a dolgat tartosan.
-
Agony
aktív tag
Köszi, a gond az volt, hogy a kezdő időpontot az egyik sor tartalmazta a befejező időpontot meg ugye az azt követő.
Végül sikerült megszülni a megoldást. Feljoinoltam a feladat táblát saját magára, csak egy sor eltolással, így már megvolt a kezdő- és záró időpont a datediffhez és a sum is működött.
(select
sum(datediff(second,f.idopont,f2.idopont))
from feladat f join feladat f2 on f.igenykod=f2.igenykod and f.tetelzam+1=f2.tetelszam
where f.igenykod=igenyek.igenykod)Köszönöm szépen a választ!
-
Apollo17hu
őstag
Szia! Oracle-ben, ha ket idopontot kivonsz egymasbol, akkor a napok szamat kapod kulonbsegkent tizedes szamkent. Ha minden feladat vegdatumabol kivonod a kezdo datumat, es osszeadod oket, akkor napokban kapod meg a kivant erteket. Ezt mar csak 1.440-nel (24*60) kell felszoroznod.
-
Agony
aktív tag
Sziasztok!
SQL lekérdezés kapcsán lenne szükségem egy kis útmutatásra és bízom a szaktudásotokban, mert én elvesztettem a fonalat.
Adott egy igény lista tábla, amin belül van egy feladatok tábla, tehát valaki indít egy igényt és azon belül akár több feladat is elvégezhető különböző személyek által. A feladatok elvégzésére fordított időt kellene összesíteni feladatonként, viszont a helyzetet bonyolítja, hogy bármikor megszakíthatják a feladatvégzés, amit aztán később folytatnak. Pl. munkaidő végén felfüggesztik, reggel pedig folytatják.
Valami SUM-al kombinált DATEDIFF szerűség kellene, de mivel többször megszakíthatnak és folytathatnak egy igényt, ötletem sincs hogyan...
Például:
Igény: Vevő megrendelés
Ezen belül vannak a feladatok az alábbi formában:
Feladat kezdés
A megrendelt áru összekészítése.
Feladat befejezésFeladat kezdés
A megrendelt áru csomagolása és átadása kiszállításra.
Feladat befejezésFeladat kezdés
A megrendelt áru kiszállítása.
Feladat befejezésMinden feladat kezdés és feladat befejezés tartalmaz egy időbélyegzőt, szóval a kezdés és a befejezés között kellene mondjuk egy különbözet percben, aztán ezt az egészet összegezni az igényre. Tehát az összekészítés mondjuk 5 perc volt, a csomagolás 3 perc, a kiszállítás pedig 40 perc, így az igény 48 perc munkaidő volt. Maguk a feladatok nem számítanak, minden esetben csak a kezdés és befejezés állapot között eltelt idő és ezeknek az összege.
Előre is köszönöm a segítséget!
-
martonx
veterán
válasz
kezdosql #4245 üzenetére
Szvsz rajtam kívül is mindenki fennakadt ezen, maximum leszarták annyira, hogy ne tegyék szóvá
A nekem címzett kérdésed félre ment, talán ezt a kérdést az sqlite fejlesztőinek kellene feltenned, nem én készítem az sqlite-otHa olyan adatbázis kezelőt keresel, amit egy szál file másolásával el tudsz a cél user gépére juttatni, és az magán belül oldjon is meg mindent, akkor arra valóban az annyit ócsárolt MS Access a legalkalmasabb.
Milyen verziókkal vannak a gondok?
-
kezdosql
tag
válasz
martonx #4237 üzenetére
Perszehogynem, rajtad kivul mindenki eszrevette, hogy lemaradt egy karakter, talan igy lehet a bolhabol elefantot csinalni.
A crossplatform is lenyegtelen mellekszal, a verziokkal vannak a gondok.
Hasonlokeppen a grafikus opcio is lenyegtelen, a lenyeg az, hogy sqlite-ban nem tudsz menut csinalni, amibol lehet valasztani. Kell egy masik programnyelv hozza.
Amugy a neked szolo kerdest is elegansan figyelmen kivul hagytad, pedig tenyleg erdekel,
hogy sqlite-ban miert kell a datumot szovegkent tarolni, es milyen konverziokkal lehet datumok kozott muveleteket vegezni?
-
RedHarlow
aktív tag
Sziasztok,
Oracle db-ben a DATE oszlopban az alábbi módon vannak tárolva a dátumok:
19-AUG. -09Lekérdezésnél, hibát kapok:
SELECT * FROM TANULO WHERE DATE '19-AUG. -09';
Hogy kellene a dátumra keresnem?
Előre is köszönöm a segítséget!
-
martonx
veterán
válasz
kezdosql #4230 üzenetére
Te mekkora erővel írod a hülyeségeid.
Egyrészt a C# az nem CC#-ot meg 3 éve már .Net Core-al szokás használni, ami teljesen platform független, linuxon, osx-en, és windowson is fut. A grafikus megjelenítés persze más tészta, csak a konzolos megjelenítés cross-platform, ha szép ablakokat akarsz minden platformon, akkor az is megoldható, de az pár fokkal macerásabb.
A C# fejlesztői csicsák, ahogy te fogalmaztál szintén ingyenesek, és szintén cross-platformok. -
-
kezdosql
tag
"A zseni nem csinal rendet, mert atlatja a kaoszt". - tartja a mondas.
(Azt persze nem teszik hozza, hogy bar emiatt mindig gyorsan eszreveszi a lenyeges dolgokat, de a tobbi papirt gyakran osszetepi vagy leonti kaveval, igy az adott helyzetben mellekes adatok karosodhatnak...) -
kezdosql
tag
válasz
martonx #4227 üzenetére
Pont nem igy van, mert hatranyos helyzetukent ms-buzik tanitottak es a hasznalhatatlan access-t vertek belem, mint sql-t, es a mai napig nem tudok megszabadulni attol a hulye es hazug szemlelettol.:-(((
Amugy pont most irtam, megirnad, sqlite-ban a datum kezeles miert problemas es hogyan lehet megoldani, milyen konverziok es trukkok kellenek hozza?
-
kezdosql
tag
Keress ra weben, hanyezerfele naptar es hasonlo alkalmazas van magukat "uzleti hataidonaplo" es hasonlonak hirdetve, mikozben tenylegesen van egy naptar nezet, lehet szoveget beirni es hasonlokat tenni, de pont a lenyeg, az adatok osszekapcsolasa reven a komplex lekerdezes hianyzik beloluk.
Vagy most jut eszembe, valamikor az outlook az ms-ben is azert lett nepszeru, mert az "uzleti hataridonaplo" illuzioval hirdettek, de tenylegesen nem volt igazi kapcsolat a naptar es a tobbi adat kozott. Arra volt jo, hogy meg lehetett tervezni a talalkozokat, de utolag, amikor arra voltal kivancsi, hogy adott szemellyel mikor talalkoztal, a naptart kellett vegiglapozni, hogy megtalald a bejegyzest.
Ilyen megoldasra talan a sqlite reven lehetoseg lenne, de allitolag pont az vele a gond, hogy a datum kezelese problemas, mert nincs datum tipus, hanem szovegkent vagy szamkent kezeli, de ezt Marton biztosan jobban tudja.
-
kezdosql
tag
Szerintem nem egeszen igy van.
Teny, hogy az Ashton Tate jo kezdemenyezeset a tipikus amerikai-angol szemlelet miatt darabokra szedtek, igy mar legalabb feltucatnyi modszert kell ismerni, mert mindenaron rengeteg uj allast akartak letrehozni.
A dBase-ben minden benne volt, a Clipper erre ratett egy lapattal, a vegeredmenybol exe-t csinalva laikusok altal kezelheto megodasokat produkalva. Volt egy megoldas, ami az adott feladatra tokeletesen mukodott, amig nem kellett a semat modositani.
Az altalad irt megoldas vezetett a mai remalomhoz, kell sql, php, html, css, javascript es egyebekhez erto szaki, es termeszetesen kell allando internet kapcsolat, es persze allandoan frissiteni kell mindent, stb.
Emiatt van rengeteg helyen az excel hasznalva, mert az egyszeru user tablazatokban es gorgetheto listakban akarja latni az adatokat.
Marton sqlite javaslataval ramutatott, hogy van megoldas server nelkuli adatbazis kezelesre, amit a c meg pascal es egyeb programok is hasznalnak, es valamikor volt "szoveges adatbaziskezelo" neven ilyesmire felbuzdulas es talan a nosql vagy hasonlok ismet ebbe az iranyba mennek majd.
A kerdes, mikor lesz hozzajuk fordito program, amivel ismet jo penzkereseti lehetoseg lesz programozoknak, mert ismet celszoftvereket lehet irni, amit "buta userek" is tudnak hasznalni es a cegek is boldogok, nem kell felleslegesen internet elofizetesre kolteni es az irodai gepeiket biztonsagos off-line modon tudjak hasznalni.
-
válasz
Petya25 #4225 üzenetére
túlfolyik az integeren. sajnos a datediff_big() csak a 2016os sql servertől érhető el. túl sok adatod van, ha tudod, egy where klauzával le kell csökkenteni a számukat.
ellenőrzésképpen ennek a selectnek is ugyanezt a hibát kellene dobnia.
SELECT avg(DATEDIFF(MILLISECOND, '12/01/2015','12/30/2015'));
-
Petya25
őstag
válasz
velizare #4224 üzenetére
2008-as MS SQL
A táblában datetime a mező, amit egy nézetben időre konvertáltam, azzal akartam tovább dolgozni.
CONVERT(time(0), ido) AS ido így szépen csak az idő maga látszik.Amit írtál select, se a konvertált mezőre se az eredetire nem fut le.
A datediff önmagában megy, akkor megvan másodpercben, oké.
De amit ráírom az AVG-t azonnal reklamál.
"Arithmetic overflow error converting expression to data type int." -
ha server, akkor egyik sem, a t-sql ezt nem tudja, csak a mysql. nyilván 2008től érdemes ezzel t-sql-lel is próbálkozni, mert az vezette be a time adattípust.
a time_to_sec egyszerűen helyettesíthető egy datediff-fel, (
datediff(s,0,ido)
), viszont a visszaalakítás az problémás lehet.
erre adja magát a dateadd (ie.:select dateadd(s, avg(datediff(s,0,ido)), 0) from tabla;
), de az date formátumot az vissza, ezt még vissza kell csapni time-ba egy converttel. viszont a convert truncol, ott bukjuk a 24 órát meghaladó részét. mondjuk ha ez olyan, akkor a time egyáltalán nem használható. -
Ispy
nagyúr
válasz
martonx #4220 üzenetére
Ezt írta a végén:
"Ha lenne egy egyszeru alkalmazas, ami csak annyit tud, hogy negy adat tetszoleges kombinaciojara lehet vele keresni, sot szurni a megjelenitendo adatokat, meglenne a boldogsag."
Ebből nekem az jön le, hogy nincsen kész program, igaz közben minden mást is írt, elég zavaros, de ez alapján nincsen mit csomagolni, szvsz.
-
-
martonx
veterán
válasz
kezdosql #4211 üzenetére
Nem értettem félre
Exe készítésre megvannak a bevált módszerek, erre valók az installer készítő programok, amiknek megadod a forráskódod, és a végén kapsz egy szép nagy exe-t.
Én C#-ot használok, az jelen verziójában imád a végső exe mellé egy csomó kis dll függőséget pakolni, bezip-eled, a user kizipeli egy mappába, és máris ott az exe, amit kattintgathat. Ha a zip nem tetszik, akkor jön a setup készítők tömkelege, válassz egy szimpatikusat, és az csinál egy szép setup varázslót, amit a user next-next-finish-el végignyom.A 3.0-ás verziójától kezdve (ami várhatóan szeptemberben jelenik meg), viszont már out-of-the-box tud a .net core is egy szál óriás exe-t csinálni neked: [link]
-
Petya25
őstag
Köszi, de még mindig azzal küzdök, hogy az időt nem konvertálja szám formába.
"Explicit conversion from data type time to float is not allowed."Olyan megoldást találtam a neten hogy az óra egységeit váltsuk át és összegezzük másodpercben int-ben. Na jó, aztán meg számoljam vissza a 127562-ből hogy az hány óra hány perc...
Excelben meg simán 5 karakteren megcsinálja az átlagot ugyanaz a cég... -
Louro
őstag
Ha HH:MI:SS kell, akkor
SELECT CONVERT(CHAR,CONVERT(DATETIME,AVG(CONVERT(FLOAT,t))),108)
FROM BASEIdőt előbb FLOAT-ba alakítod, majd átlagolod. A számot utána dátummá visszakonvertálod és abból kiszeded az időpontot. Ha csak óra és perc kell, akkor CHAR(5)
Oracle után szinte falnak szaladtam ennyi konvertálás láttán. M$ eléggé köti az ebet a karóhoz az adattípusaival.
-
Louro
őstag
válasz
Petya25 #4216 üzenetére
Szia,
egy minta....bár ezért nem csípem az MSSQL-t....tengernyi sok CONVERT kell sokszor.
;WITH base AS (
SELECT GETDATE()-10 t
UNION
SELECT GETDATE()-8
UNION
SELECT GETDATE()
)
SELECT CONVERT(DATETIME,AVG(CONVERT(FLOAT,t)))
FROM BASESzóval először FLOAT-ba alakítod, majd a kapott átlagot visszaalakítod dátummá.Remélem tudtam segíteni.
-
Petya25
őstag
MS SQL-ben egy idősorban szeretnék átlagot nézni, valami tipp erre?
03:27:05
03:48:25
03:53:22
03:54:17és Excelben erre simán (=ÁTLAG(A1:A4))
3:45:47
-
Ispy
nagyúr
válasz
kezdosql #4212 üzenetére
Az adatbáziskezelő szoftverek így működnek: van egy valamilyen backend (SQL server pl.) és van a frontend (.net pl.), ami lekérdez, megjelenít, keres stb., de ezt konyhakészen nem kapod meg, meg kell csinálni, erre vannak a programozók.
A legegyszerűbb megoldás, amivel egy laikus is eltud kezdeni dolgozni, az mondjuk egy MS Access, az összes többi megoldás ettől fényévekre van. De ahhoz meg office kell....
-
kezdosql
tag
válasz
bambano #4203 üzenetére
Igen, felreertetted teljesen.
A Clipper az egy jo megoldas volt a problemara, hogy laikusokat tavol kell tartani az adatoktol.
dBase adatbazisokat kezelt (szerintem inkabb tablakat, mert sql akkor meg nem volt) es dBase programokat hasznalt, kesobbi verzioja mar mas programokbol is elfogadott bizonyos reszeket.A nagy elonye az volt, hogy amikor a forraskodok keszen voltak, a program minden resze mukodott, akkor leforditva volt egy exe program azt kellett elinditani, es a buta user csak azt tehette, amit a menuk reven elerhetett. A buta user boldog volt, mert latta az adatokat menuben, listaban, tablazatban, ahogy menuk kozott valtott, es biztonsagos volt, nem volt lehetoseg adatokba belebarmolni.
Az sql megjelenesevel kellett egy php, vagy c vagy mas program, amivel lehetett kezelni es megjeleniteni az adatokat, majd jott a bongeszos megoldas, amihez html, css es javascript is kellett, es persze servert kell telepiteni, frissiteni, upgradelni, stb.
A buta userek pedig ragaszkodnak a tablazatkezelos megjeleniteshez, mert ok azt ertik, ezert el az excel evtizedekkel az elavulasa ota is.
A kerdesem az volt, hogy van-e olyan megoldas, hogy amikor kesz egy sql adatbazis lekerdezeset es megjeleniteset megoldo forraskod, azt leforditva van egy exe fajl es nem kell servert telepiteni, stb.
Egy jo pelda a hataridonaplok esete. Rengeteg egyszeru es bonyolult megoldas letezik ra, valoszinuleg a tobbseget c-ben vagy hasonlo nyelven irtak, de egyikkel se lehet teljes koru keresest vegezni, mert mindegyik csak a dBase-n alapulo szemlelettel mukodik, egy szempont szerint lehet keresni, komplex modon nem, amit az sql lehetove tesz.
Most szenvedunk rendesen, mert kenyszerusegbol egy excel tablaban vannak adatok, amit jellemzoen negyfele adat - datum, meret, szin, hely - tetszoleges kombinaciojaval kell keresni, amihez az excel tablat mindig at kell rendezni, emiatt allandoak user error-ok.:-(
Ha lenne egy egyszeru alkalmazas, ami csak annyit tud, hogy negy adat tetszoleges kombinaciojara lehet vele keresni, sot szurni a megjelenitendo adatokat, meglenne a boldogsag.
-
RedHarlow
aktív tag
válasz
rum-cajsz #4209 üzenetére
Igen ismerem a cront, a probléma ott kezdődik, hogy hogy mentem excelbe az adatokat. Rendszeresen ki kell küldenünk bizonyos illetőknek adatokat excelben, dátumozva. Kettőt minden hónap elsején a harmadikat minden szerdán. Jelenleg windowson sql developerrel kérik le az adatokat és onnan másolják ki az excelben aztán outlook fájlok csatolása, küldés. Ezt szeretném valahogy automatizálni.
-
rum-cajsz
őstag
válasz
RedHarlow #4208 üzenetére
ha linuxot használsz, annak van egy nagyon jó ütemezője a cron. Azzal gyakorlatilag bármilyen ütemezést be tudsz állítani. Bár az excel és a mail küldés még külön programot igénylenek.
A szkriptet kell megírnod egyedül, kell egy oracle kliens, amiben sqlplus programot tudod parancssorban használni. pl. ez minden óra 27 perckor lefut
cron bejegyzés:27 * * * * /home/user/sqlscript/napifutas.sh
napifutas.sh
ScriptHome="/home/user/sqlscript"
PwFile="$PasswdHome/jelszo.txt"
secret=UserName/$(< $PwFile)@adatbazis
sqlplus -s <<EOF
$secret
@$ScriptHome/sajatscript.sql
EOF
-
Louro
őstag
válasz
RedHarlow #4205 üzenetére
Hogy konkrétabb legyek (TSQL megoldás):
IF DAY(GETDATE()) = 1
BEGIN
--Leválogatás kitétele
EXEC master.dbo.xp_cmdshell 'sqlcmd -S "SERVERNAME" -d ADATBÁZISNÉV -E -o "C:\Windows\System32\passwords.txt" -Q "SELECT * FROM table" -W -w 999 -s";" '--Emailküldés
DECLARE @HTML VARCHAR(2000);SET @HTML = 'Ide azt pakolsz, amit szeretnél' ;
EXEC msdb.dbo.sp_send_dbmail
@recipients = 'címzett@itcafe.hu',
@subject = 'Tárgy',
@file_attachments = N'C:\Windows\System32\passwords.txt',
@body = @HTML,
@body_format = 'HTML';
ENDBeteheted napi futásba is, nem fogja elvinni az erőforrást. Vagy kihagyod az IF-es részt és a Schedule részben megadod, hogy minden hónap első napján fusson le.
Persze igényesebb megoldás lenne SSIS Package-be tenni. De feladat méretétől függ. Az apró lekérdezéseket inkább így oldom meg.
-
Louro
őstag
válasz
RedHarlow #4205 üzenetére
Környezet? Oracle, SSMS, .... ? Ez eléggé függ attól.
Röviden azt mondanám általánosságban, hogy legyen egy IF elágazás, ahol megmondod, hogy az aktuális nap a hónap első napja, akkor fusson el, különben ugorja át. Majd ezt az egészet egy package-be
Én TSQL-lel is pakolok olykor ki, bár tudom, hogy nagyon retro és inkább SSIS kellene, de lusta vagyok egy exportra package-et készíteni
-
RedHarlow
aktív tag
Sziasztok,
Szeretnék automatizálni egy SQL lekérdezést úgy, hogy minden hónap elsején fusson le, az eredményeket pakolja hozzá egy excel tábla új soraiba majd küldje el e-mailben. Ti mivel/hogy oldanátok meg a taskot?
Előre is köszönöm a segítséget!
-
bambano
titán
válasz
kezdosql #4202 üzenetére
egyrészt a clipper nagyon jól fut dosemuban.
másrészt létezik, flagship néven.szerk: persze lehet, hogy félreértettelek. ha az az elvárás, hogy egy exe legyen, ami clipper kompatibilis adatbázisokat kezel, akkor flagship. ha az az elvárás, hogy egy exe, akkor beépíthető, külön telepítést nem igénylő adatbáziskezelő van kilószám, akár firebird, akár más.
-
kezdosql
tag
Letezik az osregi Clipper-hez hasonlo adatbaziskezelo program?
Az a lenyeg, hogy a vegen csak egy exe program legyen az adott feladatra. -
Louro
őstag
válasz
martonx #4200 üzenetére
Gondolom nálatok is egy interjún, egy szimpla SELECT feladat láttán, ha azt kérné a jelentkező, hogy szóban elmondhatja e, hogy hogyan oldaná meg, ti is elkerekedett szemekkel kérnétek, hogy mondja. (Egy adatelemző ne beszéljen, kódoljon és értelmezzen
)
Előző munkahelyemen Oracle volt és ott a temptáblát a többsége simán CREATE TABLE-DROP megoldással kezelte. (Mondjuk én CTE-párti vagyok, de sok kifinomult megoldás van a szemét elkerülésére.)
Új hozzászólás Aktív témák
- Amlogic S905, S912 processzoros készülékek
- Meghalt a Windows 10, éljen a Windows 10!
- Milyen hangkártyát vegyek?
- PlayStation 4
- Szünetmentes tápegységek (UPS)
- Audi, Cupra, Seat, Skoda, Volkswagen topik
- E-roller topik
- Milyen program, ami...?
- Tőzsde és gazdaság
- Épített vízhűtés (nem kompakt) topic
- További aktív témák...
- Beszámítás! Samsung Odyssey G5 32 QHD 144Hz VA 1ms monitor monitor garanciával hibátlan működéssel
- HIBÁTLAN iPhone 13 mini 128GB Midnight -1 ÉV GARANCIA - Kártyafüggetlen, MS3337, 94% Akkumulátor
- REFURBISHED - Lenovo ThinkPad 40A9 USB-C Dock
- Gamer PC-Számítógép! Csere-Beszámítás! I7 12700E / RTX 3060Ti / 32GB DDR4 / 512GB Nvme SSD
- BESZÁMÍTÁS! MSI B450 R7 5800X 32GB DDR4 1TB SSD RTX 3080 10GB ZALMAN S2 TG Cooler Master 700W
Állásajánlatok
Cég: NetGo.hu Kft.
Város: Gödöllő
Cég: Promenade Publishing House Kft.
Város: Budapest