Hirdetés
- sziku69: Szólánc.
- sziku69: Fűzzük össze a szavakat :)
- Luck Dragon: Asszociációs játék. :)
- eBay-es kütyük kis pénzért
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- D@reeo: Pi-hole és a Telekom Sagemcom F@st 5670 DNS beállítása
- Brogyi: CTEK akkumulátor töltő és másolatai
- Sub-ZeRo: Euro Truck Simulator 2 & American Truck Simulator 1 (esetleg 2 majd, ha lesz) :)
- bb0t: Ikea PAX gardrób és a pokol logisztikája
- GoodSpeed: A RAM-válság és annak lehetséges hatásai
Új hozzászólás Aktív témák
-
Panhard
tag
Sziasztok!
Van egy lekérdezésem, ami így nézni:select cast(datetime as DATE) as gpsdate from kocsi GROUP by gpsdate;
Napokat csoportosítja a datetime oszlop szerint. Kb: 1.8millio sor van az oszlopban. Egy napra kb: 2000.
Ez a lekérdezés jelenleg 1.9mp-ig tart.
Az oszlop indexelve van, Az explain lekérdezés szerint használja is. Az explain extra oszlopába ezt írja: "Using index; Using temporary; Using filesort".
Ideiglenes táblát hoz létre a lekérdezéshez. Lehet ezt másképpen csinálni, hogy sokkal gyorsabb legyen? Ne tartson majdnem 2 mp-ig? -
Panhard
tag
válasz
instantwater
#2146
üzenetére
ai, date, time oszlopok voltak az adatbázisban. Az ai volt az auto increment, csak a rendezés miatt kellett, más haszna nem volt. Ez a három oszlop helyett lett a datetime, a másik három majd törölve lesz.
A datetime mezőben soha nem lesz két egyforma adat. De ha mégis valamiért feltöltődne, a primary key index megakadályozza.
A datetime oszlop tartalmát a date és time oszlopokból generáltam. Csak az a baj, hogy 2018 előtt nem figyeltem arra, hogy ne töltődjön fel két egyforma adat, így most van egy pár táblázat, ahol kb: másfél millió sorból van átlagban 500 duplikált. Azokat kellen törölnöm. -
Panhard
tag
válasz
instantwater
#2144
üzenetére
SELECT * FROM tabla WHERE datetime between '".$_GET["datum"]." 00:00:00' and '".$_GET["datum"]." 23:59:59' ORDER BY datetime DESC
Így működik.Viszont lenne még egy kérdésem: Van pár tábla, ahol elég sok duplikált bejegyzés van a datetime oszlopban, és ezért nem engedi beállítani az indexet. Neten találtam pár megoldást a duplikált bejegyzések törlésére, de egyik sem működik. Erre tudsz valami működő megoldást?
-
Panhard
tag
válasz
instantwater
#2140
üzenetére
"column BETWEEN dátum 00:00:00 AND dátum 23:59:59 ?"
Így működik.
Köszönöm! -
Panhard
tag
válasz
instantwater
#2140
üzenetére
"column BETWEEN dátum 00:00:00 AND dátum 23:59:59 ?"
ezt nem értem.Sajnos a tárhely szolgáltatóm nem használja a 8-as MySQL-t.
Vannak oszlopok is, amikben a dátum és idő van külön-külön, azokon az indexelés jól működik.
Gondoltam lecserélem őket egy datetime oszlopra. De akkor lehet marad ahogy van.
-
Panhard
tag
Sziasztok. Adatbázisban van egy oszlopom, ami DATETIME formátumú, így vannak benne az adatok: "2021-02-04 20:00:00". Én ebből az oszlopból mindig csak a dátumra kérdezek le így: CAST(DATETIME AS DATE).
Hogyan lehet indexelni ezt a dátumra történő lekérdezést? Ha az egész oszlopot indexelem, úgy nem jó, mert csak a dátumra kérdezek le, így az indexelés hatástalan. -
Panhard
tag
Sziasztok! Adatbázisban szeretnék utólag legenerálni egy új oszlopba, soronként unixtime-ot, meglévő dátum és idő mezőkből.
Addig megvan a kód, hogy fix dátum, idő értékből megcsinálja, de hogy tudom a dátum és idő helyére beírni a dátum és idő mezők értékeit?UPDATE database SET timestamp = UNIX_TIMESTAMP('2020-09-19 16:00:00') where sorszam < 100 -
Panhard
tag
válasz
martonx
#2018
üzenetére
Valójában több feltétel van több értékkel, nem csak az év. Minden feltételnél ott van az "összes" lehetőség is.
Próbáltam a LIKE '%'-ot, ez jó. Így csak egy lekérdezés lesz php-ban. A % visszaad mindent.sql injection problémánál arra gondolsz, hogy GET paramétert ne tegyünk közvetlenül SQL lekérdezésbe, hanem először php-ben ellenőrizzük le az értékét?
-
Panhard
tag
Sziasztok. Egy weblapon van egy választómező:
<select id="ev" onchange="beir()">
<option value='2018'>2018</option>
<option value='2017'>2017</option>
<option value='2016'>2016</option>
<option value='2015'>2015</option>
<option value='2014'>2014</option>
<option value='osszes'>Összes</option>
</select>Ez egy sql lekérdezért csinál:
$result = mysqli_query($con, "SELECT * FROM helyek WHERE (YEAR(date) = '".$_GET["datum"]."')");A kérdésem az, hogy van-e valami megoldás arra, ha az "összes" értéket választom ki, akkor az összes évet visszaadja.
Valami olyan, amit a $_GET["datum"]-nál a 'datum' helyett beírni, hogy ne kelljen feltételekkel több lekérdezés között választani.Jelenleg csak olyan megoldást találtam, ha az 'összes' van kiválasztva, akkor egy másik lekérdezést csinálok, amiben nincs benne a feltétel.
-
Panhard
tag
Sziasztok!
Synology NAS-ra van nekem telepítve MariaDB adatbázis. Ha phpmyadminnal bejelentkezek rá, és az állapotváltozóknál módosítok egy értéket, akkor csak addig marad úgy, amíg a NAS-t újra nem indítom. Újraindítás után minden visszaáll alapertékekre. Ez mitől lehet? Hova mentheti el az értékeket? Lehet, hogy nincs írási joga a könyvtárhoz? -
Panhard
tag
Sziasztok. Egy tábla utolsó elemeit akarom lekérdezni úgy, hogy az eredménynél a legrégebbi adat van a lista elején.
"SELECT * FROM tabla ORDER BY datum DESC, ido DESC LIMIT 100"
Így ki is veszi a 100 legutolsó bejegyzést dátum és idő alapján, de ekkor a listában a legfrissebb adat van legfelül. Hogy tudnám ezt megfordítani, hogy a 100 adatból a legrégebbi legyen legfelül?
Új hozzászólás Aktív témák
- Lenovo ThinkPad P15 Gen 1 Tervező Vágó Laptop -50% 15,6" i7-10750H 16/512 QUADRO T1000 4GB
- Lenovo ThinkPad P15 Gen 1 Tervező Vágó Laptop -50% 15,6" i7-10750H 16/512 QUADRO T1000 4GB
- Boya BY M1/AV Jefe TCM-100 lavalier mikrofonok
- Mantona Luis Retro kamera hátizsák fekete
- 2db Sony 128GB Uhs-II/U3/V90 és 1db Kingston 256GB Uhs-II/C10/V90
- ÁRGARANCIA!Épített KomPhone Ryzen 7 5700X 32/64GB RAM RTX 5060 Ti 8GB GAMER PC termékbeszámítással
- GYÖNYÖRŰ iPhone 14 128GB Midnight -1 ÉV GARANCIA - Kártyafüggetlen, MS3972, 100% Akkumulátor
- HP Elitebook 735 G6 13 3 FHD Laptop AMD Ryzen 5 Pro 16 GB RAM 512GB SSD 6 hónap garanciával
- VICC ÁR! Dell Precision 7530 - Xeon E2186M (i9-8950HK++) / 32GB RAM 512GB SSD Quadro P2000
- Garmin Forerunner 405 GPS óra
Állásajánlatok
Cég: ATW Internet Kft.
Város: Budapest
Cég: BroadBit Hungary Kft.
Város: Budakeszi
Köszönöm!

