- Iszonyatos mennyiségű hulladékkal járhat a Windows 10 terméktámogatásának vége
- Soundbar, soundplate, hangprojektor
- Milyen asztali (teljes vagy fél-) gépet vegyek?
- Házimozi haladó szinten
- Milyen TV-t vegyek?
- Házi barkács, gányolás, tákolás, megdöbbentő gépek!
- iPad topik
- Azonnali informatikai kérdések órája
- Nagyon érzékeny lett a játékok archiválására a Nintendo
- Apple MacBook
Új hozzászólás Aktív témák
-
bambano
titán
ha már piszkos dolgokat művelünk
itt egy kezdemény postgresql-ben:select szo,s.a from worduniq,generate_series(1,char_length(szo)) as s(a);
tmp=> select * from worduniq;
szo
-----------------------
123456123
123456123223453473456
229898012342
(3 rows)
szo | a
-----------------------+----
123456123 | 1
123456123 | 2
123456123 | 3
123456123 | 4
123456123 | 5
123456123 | 6
123456123 | 7
123456123 | 8
123456123 | 9egy substring, egy distinct select és az eredmény összepakolása van hátra. ezeket, egyszerűségük folytán, az olvasóra bízzuk
-
bpx
őstag
válasz
#30734848 #3142 üzenetére
Hát én egy regexpet ilyenkor meg nem írok már, de a sima SQL még belefér egy hosszú nap után:
create table t1 (text varchar2(20 char));
insert into t1 values ('123456123');
insert into t1 values ('12342');
insert into t1 values ('229898012342');
select text from t1;
TEXT
--------------------
123456123
12342
229898012342
select
text,
listagg(c, '') within group (order by c) as uniq_c
from
(
select
distinct text, substr(text, level, 1) as c
from
t1
connect by level <= length(text)
)
group by
text
;
TEXT UNIQ_C
-------------------- --------------------
12342 1234
123456123 123456
229898012342 0123489 -
balagedebr
tag
Sziasztok!
Valakinek nincs meg esetleg a 'SQL-Iekérdezések földi halandóknak' című könyv CD melléklete?
Köszi!
-
#30734848
törölt tag
Az előbb rosszul fogalmaztam, elnézést, csak már nem volt időm még egyszer szerkeszteni. Ez a számsor két mezőnek az összefűzéséből jön létre (Az számok egytől nyolcig információt jelölnek.). Ezért van szükség az ismétlődések kiszűrésére
Szóközzel lehet érthetőbb:
('1 2 3 4 1 2') -- > ('1 2 3 4')
Tehát az a kérdés, hogy mivel lehet a számok ismétlődéseit kiszűrni, hogy minden érték csak egyszer szerepeljen.
-
#30734848
törölt tag
Ha van egy olyan karakterláncom, amely csak számokat tartalmaz pl: '123456123'.
Oracel sql-ben mivel tudom visszaadni az egyedi értékekeket?
Tehát azt szeretném látni ebből a listából, hogy '123'.
Erre mi lehet a legegyszerűbb megoldás? Regexp_substr?Előre is köszönöm!
-
tazkir
csendes tag
Sziasztok,
Bármilyen megoldás érdekel, de semmit nem konyítok a programozáshoz.
Van egy weboldal, ahol le lehet kérdezni egy listát, de sajnos csak 20 sort hoz be egyszerre.
Hogy tudnám egyszerűen elérni, hogy az általam leszűrt kategóriára az összes találatot lehozza egy oldalra. Ne kelljen a következő oldal gombot nyomkodni, mert, akár 20 oldal is lehet.üdv,
-
Kommy
veterán
Lehetséges olyan lekérdezést írni, hogyha az egyik feltétel igaz, mondjuk 1 az értéke akkor az egyik oszlopba másik adatot írjunk.
Egy példa, egy javítást egyeztetünk az ügyféllel, ha kéri a javítást akkor a megjelenítendő összeg az alkatrész + a javítás összege, de ha nem kéri a javítást akkor egy előre megállapított összeg. És a fontos az lenne, hogy nekem vagy az összeget vagy a z előre megállapított összeget írná ki.
-
Louro
őstag
válasz
Apollo17hu #3132 üzenetére
Az a THEN 1, azért problémás és igyekeztem röviden megúszni a kódsort. A THEN után is még 10 sor legalább, amiből az eredmény származik. Megoldhatnám, hogy lekezelek külön mindent, de akkor a THEN utáni részt kellene sokszor bemásolni.
-
Louro
őstag
Sziasztok!
Olyan lehet case-ben vizsgálni, hogy
case when 1=1 and 2=2 and 3=3 and
case when 4=4 and 5=5 then 'true' else 'false' end then 'jó' else 'nem jó' endHasonló vizsgálatot kellene végeznem, de nem találtam sehol se megoldást rá.
Lehetne rengeteg egymásban ágyazott case-zel megoldani, de reméltem, hogy pár sorban ezt letudom.
Nektek van egyéb ötletetek?
-
Louro
őstag
Szia,
powershell elindul. Régen még tanultam is. Megpróbálom elsőként abban megoldani.
Nem ragaszkodok a Windows saját ütemezőjéhez, de mivel nem vagyok admin, nem vagyok DBA, így korlátozottak a lehetőségeim. A DBMS Scheduler-ért küzdünk, de az nem 100%, hogy meglesz. Így a meglévő eszközökhöz nyúlnék.
-
bpx
őstag
Kell egy adatbázis job, ott van rá az adatbázis saját ütemezője. Mi a baj azzal?
DBMS_SCHEDULER helyett van DBMS_JOB is, de az a régi módszer, nem ajánlom, arról le kellene szokni.Vagy ha nagyon Windows jobot akarunk (inkább ne), akkor kb. ennyit kell beütemezni:
set ORACLE_HOME=...
set ORACLE_SID=...
set PATH=%ORACLE_HOME%\bin;%PATH%
sqlplus user/password @script.sql -
-
Louro
őstag
Sziasztok!
Lehet elég bagatel kérdést fogok feltenni, de hátha van rá megoldás. (Vagyis van, mert Excel makróval meg tudom oldani.)
Adott egy .sql fájl. Benne rengeteg trigger (insert, update, temptáblák létrehozása,...). Van arra lehetőség DBMS Scheduler nélkül valahogy beütemezni?
Környezet: Oracle
Elérhető programok: Toad és PL SQL Dev 9Windows ütemező nem tudom milyen nyelvet igényel, de lehet van mégegyszerűbb megoldásotok is. Az Excel makróval az a gondom, hogy akkor az Excelt teljesen kilövöm a gépen, ha fut.
Válaszotok előre is köszönöm.
-
martonx
veterán
Hát nem SQL-ből
Azaz fogod és írsz egy PowerShell scriptet mondjuk, ami ütemezve fut (Windows scheduler ugye). És a scripten belül azzal kezded, hogy letöltöd a file-t, ha ez sikerült, akkor tovább mész, és üríted a temp táblát bulk insertelsz. Ha ez sikerült, akkor mehet a végleges betöltés.
-
Pilács
senior tag
Sziasztok, elakadtam. Segítséget kérek:
Van egy weboldal, ahonnan le kell szednem egy .csv fájlt, majd annak tartalmát szerektálva betölteni egy táblába. (MS SQL alól)
PowerShell utasítással leszedem a fájlt SQL alól (EXEC xp_cmdshell 'powershell .....'), majd létrehozok ideiglenes táblát, abba BULK INSERT, majd ebből kiválogatva beszúrom egy táblába, amit előtte kiürítek.
De az a baj, hogy van amikor nem jön le a fájl, és a procedúra kiüríti a végső táblát, és nem tölt be semmit. Azt kellene megoldanom, hogy ha nem elérhető a fájl, akkor próbálkozzon mondjuk 3x letölteni, majd ha ez után is sikertelen a letöltés, akkor álljon meg a művelet, minden adat marad a végső táblában. JOB-ot csináltam belőle, óránként kellene frissíteni. Ez megy is, ha a fájl letölthető, de van hogy 1-2 óráig üres a tábla. Hogyan tudom kezelni SQL alól a letöltési hibát, valamint megoldani, hogy 3x próbálozzon újra, és ha sikertelen, akkor majd a következő JOB periódusidőben újra megpróbálja?
Köszönöm!
-
Thrawnad
senior tag
válasz
fordfairlane #3118 üzenetére
Nos php alatt kellene.
Itt a kód részlet.
Az első része fut a második amibe bele tettem amit írtál az nem.$csekkolotabla = mysql_query( "SELECT * FROM bejelentkezesek where nap='$ma' and honnan = '1' and mikor=(select max(mikor) from bejelentkezesek where nap='$ma' and honnan = '1') ");
$sor_1 = mysql_fetch_array( $csekkolotabla ) ;
$mikor_1 = $sor_1[mikor];
$csekkolotabla = mysql_query( " SELECT * FROM bejelentkezesek WHERE mikor IN (SELECT mikor FROM bejelentkezesek WHERE DATE(nap) = CURRDATE() AND honnan = '1' ORDER BY mikor DESC LIMIT 3)");
$sor_1_1 = mysql_fetch_array( $csekkolotabla ) ;
$mikor_1_1= $sor_1_1[mikor];Így tudsz segíteni?
-
fordfairlane
veterán
válasz
Thrawnad #3115 üzenetére
SELECT * FROM bejelentkezesek WHERE mikor IN (SELECT mikor FROM bejelentkezesek WHERE DATE(nap) = CURRDATE() AND honnan = '1' ORDER BY mikor DESC LIMIT 3)
(PHP alatt lehetőleg NE használd a mysql_query függvényt!)
-
DS39
nagyúr
válasz
Thrawnad #3115 üzenetére
Szia!
Én így csinálnám:
select top 3 *
from tablanev
where (..egyéb feltételek..)
order by datum descközben eszembe jutott mysql-ben nincs top 3, akkor limit 3 a végére, ahogy a kolléga írta.
lényege az lett volna, hogy felesleges a belső select, ha a legutolsó (vagy a 3 utolsó) bejelentkezés adatait szeretnéd lekérni. -
Thrawnad
senior tag
Sziasztok lenne egy kérdésem!
Nem vagyok igazán járatos az SQL-ben, ami kellett eddig össze ollóztam.
Most viszont kellene egy lekérdezés.
A táblából a feltételnek megfelelő legnagyobbat ki tudom kérni:mysql_query( "SELECT * FROM bejelentkezesek where nap='$ma' and honnan = '1' and mikor=(select max(mikor) from bejelentkezesek where nap='$ma' and honnan = '1') ")
Nekem az egyel, illetve kettővel kisebbre is szükségem lenne.
Köszönettel:
Thrawnad
-
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.
-
martonx
veterán
Mondjuk Microsoft vonalon maradva Visual Studio LightSwitch 2015 (szólok előre, hogy ingyenes). Jobb, mint az Access, mert:
1. bármilyen teljes értékű SQL lehet alatta, mondjuk MS SQL
2. webes kimenetet generál neked, azaz Access el ellentétben bárhol bármikor, akárhány konkurens userrel tudjátok használni.Nem Microsoft vonalon is van egy csomó ehhez hasonló eszköz.
"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."
No ez az, dobd ki az egész eddigit, és írd újra azzal a megközelítéssel, amit fentebb mondtam. Bármilyen eszközzel is fogsz végül nekiállni, amit mondtam mindegyikre igaz lesz. 100%, hogy alapjaiban elhibázott az adat tábla struktúrád, és így nyilván a rájuk épülő formok is. -
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.
-
martonx
veterán
-
martonx
veterán
Szerintem teljesen rossz az alapállásod a feladathoz. Neked Accessben alap formokat, táblákat kell definiálnod, amiknek közük nincs a fejedben élő Excelhez.
Csinálsz egy formot, ahol bekéred a készlet mozgást, utána pedig Access SQL-el kezeled a többit. Ugyanakkor szólok, hogy szvsz nagyon nem az Access a megfelelő eszköz erre így 2016-ban, bár programozási tudás híján talán mégis (bár még akkor se, bár akkor semmi megoldás sem jó
).
-
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.
-
bpx
őstag
válasz
bambano #3100 üzenetére
Azért, mert akkor született a döntés a napok kihagyásáról, és az Oracle meg fogta magát, és ezt vette alapul. Kipróbáltam, a területi beállításoknak erre nincs hatása, tehát én hiába állítom pl. UK-ra, attól még nem fogja az 1752-t 355 naposnak számolni, hanem ugyanúgy 1582-t mondja rövidebbnek.
Új hozzászólás Aktív témák
Hirdetés
- Iszonyatos mennyiségű hulladékkal járhat a Windows 10 terméktámogatásának vége
- Nyaralás topik
- Soundbar, soundplate, hangprojektor
- Milyen asztali (teljes vagy fél-) gépet vegyek?
- Hegesztés topic
- Windows 10
- Házimozi haladó szinten
- Milyen TV-t vegyek?
- Házi barkács, gányolás, tákolás, megdöbbentő gépek!
- Nintendo 3DS és DS topic
- További aktív témák...
- Gigabyte B450M S2H + Ryzen 5 1400 kisebb-nagyobb hibával
- Nokia 105 4G (2023) charcoal, Nokia 110 4G (2023) midnight blue
- ASRock B550 PG Velocita + Ryzen 5 3600 + 32GB (4x8GB) DDR4 3600Mhz CL18
- Philips 58PUS8505 Smart LED Televízió,146 cm, 4K Ultra HD ,Android, Ambilight, HDR10+ KIJELZŐHIBÁSAN
- Canon EOS 250D kiegészítőkkel, táskával (CSAK 200 expoval !!! )
- BESZÁMÍTÁS! Gigabyte Z390 i7 9700 16GB DDR4 512GB SSD GTX 1070 8GB Rampage SHIVA ADATA 600W
- ASUS Radeon HD6950 DirectCU II 2GB 256bit GDDR5 EAH6950 DCII/2DI4S/2GD5 Videokártya eladó
- LG 39GS95UE - 39" Ívelt OLED / QHD 2K / 240Hz & 0.03ms / 1300 Nits / NVIDIA G-Sync / AMD FreeSync
- Amazon Kindle 10th Generation ébresztős tok
- ÁRGARANCIA!Épített KomPhone i7 14700KF 32/64GB RAM RX 9070 16GB GAMER PC termékbeszámítással
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest