- Luck Dragon: Asszociációs játék. :)
- Magga: PLEX: multimédia az egész lakásban
- GoodSpeed: Bye PET Palack, hello SodaStream
- f(x)=exp(x): A laposföld elmebaj: Vissza a jövőbe!
- eBay-es kütyük kis pénzért
- sziku69: Szólánc.
- Gurulunk, WAZE?!
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- sziku69: Fűzzük össze a szavakat :)
- gban: Ingyen kellene, de tegnapra
Új hozzászólás Aktív témák
-
bpx
őstag
válasz
don_peter #1731 üzenetére
Feltételeztem, hogy olyan eset nem fordul elő, hogy egy fórum üzenethez nem létezik user (mert usert általában nem törlünk, csak inaktiválunk), és így nem kell ezek közé is outer join, de egyébként igen.
Ezen kívül, ha van rá igény, azt kellene még megcsinálni, hogy a topikonként a legújabb hozzászólás dátumát és felhasználóját helyesen összegyűjteni, mert egy ilyen GROUP BY-t egy szigorúbb adatbáziskezelő (pl. DB2, MSSQL, Oracle) kapásból visszadob hibával, mert nem determinisztikus az eredmény. (Azt, hogy a MySQL egyáltalán megenged ilyet, én inkább hiányosságnak tartom, mint feature-nek - OK, kikapcsolható ez a működés.)
MySQL-ben sajnos nincsenek analitikus függvények, helyette vannak ilyen kerülő megoldások:
Végül limitálni kellene, hogy hány sort kapunk vissza, hogy ne dolgozzon esetleg feleslegesen az adatbázis, és gondolom a felhasználónak sem a létező összes, akár több száz, ezer topikot rakod ki felületre, hanem csak egy fix mennyiséget, ahogy pl. itt a prohardveren is működik.
-
bpx
őstag
válasz
don_peter #1729 üzenetére
Ha azok a topikok kellenek, amelyekben nincs hozzászólás, akkor miért a forum_uzenetek van a LEFT JOIN bal oldalán?
forum_uzenetek fu
LEFT JOIN topik t
ON fu.topik_id = t.idEz azt jelenti, hogy azokat fórum üzeneteket is kéred, amelyek egyik topikhoz sem tartoznak.
forum_uzenetek LEFT JOIN topik + UNION bonyolítás helyett nem egyszerűbb lenne a topik LEFT JOIN forum_uzenetek?
-
bpx
őstag
A 4 darab \-ből LIKE-nál 1 darab \ lesz, mert duplán escape-el.
Because MySQL uses C escape syntax in strings (for example, “\n” to represent a newline character), you must double any “\” that you use in LIKE strings. For example, to search for “\n”, specify it as “\\n”. To search for “\”, specify it as “\\\\”; this is because the backslashes are stripped once by the parser and again when the pattern match is made, leaving a single backslash to be matched against.
-
bpx
őstag
válasz
Speeedfire #1384 üzenetére
-
bpx
őstag
válasz
szmegma #1360 üzenetére
az a baj a mysqllel, hogy nincs benne egyszeru "generator" funkcio, mert egyebkent ez a feladat pl. arra is lefordithato, hogy generaljunk szamokat 1-31-ig es adjunk hozza ennyi napot a mostani datumhoz, ami tisztan SQL lenne
de rekurziv lekerdezessel megoldhato, csak kell egy olyan forras, amelynek legalabb 31 sora van
peldaul select SQL megoldas:select date_add(CURDATE(), interval o.num day) from
(select @n := @n + 1 as num
from information_schema.columns, (select @n := 0) n
limit 31) o;ezzel persze az a baj, hogy mindig az information_schema.columns-hoz (vagy amire epp meg van irva) kell nyulni + akar el is lehetne tarolni a szamokat 1-31-ig egy kulon tablaban (es nem kell feltalalni ujra a kereket naptar tablaval):
create table numbers (n int);
insert into numbers
select @n := @n + 1 as num
from information_schema.columns, (select @n := 0) n
limit 31;
select date_add(CURDATE(), interval n.n day) from numbers n;csak hat ez meg megint ronda (szerintem)
szemlelteteskeppen, Oracle-ben ez ennyi:
select sysdate + level from dual connect by level <= 31;
a dual tabla sajatossagai miatt ez raadasul sem diszkrol, sem a cache-bol nem olvas, nem kell PL/SQL-ezni meg context switch sincs
-
-
bpx
őstag
válasz
spammer #1236 üzenetére
na akkor tisztazzuk mit szeretnel
egy adott tablarol megtudni, hogy milyen "color_" kezdetu oszlopai vannak (es semmi adatot)?
ebben az esetben:
SELECT column_name, data_type
FROM information_schema.columns
WHERE table_name='colors'
AND column_name LIKE 'color_%';(a _ karaktert szerintem escape-elni kell ha biztosra akarsz menni, mert a LIKE-ban az pontosan 1 darab akarmilyen karaktert jelenthet, tehat a fenti minta illik arra is pl., hogy "color1")
vagy pedig magat a lekerdezest szeretned eloallitani? tehat nem tudod elore, hogy a tablanak milyen color oszlopai vannak, de szeretned azoknak a tartalmat lekerdezni
ez esetben dinamikus SQL kell
Új hozzászólás Aktív témák
Hirdetés
- Autós topik
- One otthoni szolgáltatások (TV, internet, telefon)
- Gondnokság alá helyeztetnék a Google Chrome böngészőt
- GTA VI
- Battlefield 3
- Mibe tegyem a megtakarításaimat?
- AMD Navi Radeon™ RX 9xxx sorozat
- E-roller topik
- Samsung Galaxy Watch7 - kötelező kör
- Soundbar, soundplate, hangprojektor
- További aktív témák...
- Eladó Macbook AIR M1 2020
- Xiaomi Redmi Note 13 Pro+ 5G 12/512GB, Újszerű, Kártyafüggetlen, Töltővel, Dobozzal, 1 Év Garancia!
- Samsung Galaxy S23 Ultra 8/256GB, Megkímélt, Kártyafüggetlen, Töltővel, Dobozzal, 1 Év Garanciával!
- Keresek: PGA processzor "kiemelőt".
- Samsung Galaxy A54 5G 8/128GB, Újszerű, Kártyafüggetlen, Töltővel, 1 Év Garanciával!
- IKEA (HAVREHOJ) tablet tartó
- Nvidia Setup! Kamatmentes rèszletre is!
- GYÖNYÖRŰ iPhone 13 mini 128GB Starlight -1 ÉV GARANCIA - Kártyafüggetlen, MS3133, 95% Akkumulátor
- ÁRGARANCIA!Épített KomPhone Ryzen 5 7600X 32/64GB RAM RTX 5070 12GB GAMER PC termékbeszámítással
- Lenovo IdeaPad Gaming 3 15ACH6 - 15.6"FHD IPS 120Hz - Ryzen 5-5600H - 16GB -512GB - RTX 3050 - Win11
Állásajánlatok
Cég: FOTC
Város: Budapest