Hirdetés
- Luck Dragon: Asszociációs játék. :)
- Luck Dragon: Óraátállítás
- gban: Ingyen kellene, de tegnapra
- Mr Dini: Mindent a StreamSharkról!
- NvidiaRTX: Xiaomi Electric Scooter 6 Max: Az első rollerem
- bambano: Bambanő háza tája
- sziku69: Szólánc.
- sziku69: Fűzzük össze a szavakat :)
- Luck Dragon: Alza kuponok – aktuális kedvezmények, tippek és tapasztalatok (külön igényre)
- Geri Bátyó: Agglegénykonyha különkiadás 2 – Kajás poénok
Új hozzászólás Aktív témák
-
L3zl13
nagyúr
válasz
vakondka
#469
üzenetére
Még nem használtam így, de ha minden igaz, akkor amennyiben a felhasználó rendelkezik a megfelelő jogokkal mindkét adatbázishoz, akkor elhagyhatod a mysql_select_db-t, és elég csak a queryben megadnod, hogy melyik tábla melyik adatbázisban található az adatbázis.tábla formátumot használva.
-
L3zl13
nagyúr
válasz
oroltbors
#381
üzenetére
Első körben az unionnak itt semmi értelme itt szerintem.
Egy SELECT * FROM component WHERE typeID = 1 or typeID=2 sokkal jobb megoldás szerintem.Másrészt meg a fenti példámban írtam a helyes szintaxist. Az al lekérdezésnek kell adni egy aliast, hogy táblaként kezelje.
Tehát helyesen így lenne:
SELECT * FROM (SELECT * FROM component WHERE typeID = 2 or typeID=1) as tempUnionnál meg egyszerűen írd a végére a te verziódnak, hogy 'as akármi'
Ja, és javasolnám, hogy szerezz be egy SQL klienst. Például egy phpMyAdmint vagy egy sqlyogot. Akkor nem csak a num_rows-nál derülne ki állandóan, hogy hibás volt a lekérdezés, és értelmes SQL hibaüzenetet kapnál vissza ami sokkal beszédesebb volna.
Vagy irass ki egy mysql_error()-t a query után. -
L3zl13
nagyúr
válasz
oroltbors
#376
üzenetére
Ha minden igaz az Intersect kapcsolat azokat a sorokat adná vissza, amelyek mindkét lekérdezésben benne vannak. Ezt szvsz egy egymásba ágyazott selecttel lehet helyettesíteni.
select ... from (select ... from ... where ...) as x where ...
Vagy pedig joinná átalakítani.
Szerk: Ja látom ArchElf linkjén is ilyesmit írnak.
-
L3zl13
nagyúr
Szvsz vagy valami viszonylag egyszerű scripttel átkonverálod az inserteket update-té, vagy létrehozol egy átmeneti táblát az adatbázisban, abba feltöltöd az insertekkel az adatot (Egy szövegszerkesztőben csere minddel átírod a táblanevet.) és utánna többsoros update-tel frissíted az éles táblát.
Elvileg az InterBase is tud többsoros update-et.UPDATE Country
SET CODE = (SELECT CODE FROM CountryTMP WHERE Country.ID=CountryTMP.ID),
SET NAME = (SELECT NAME FROM CountryTMP WHERE Country.ID=CountryTMP.ID),
SET CLASSIFIER = (SELECT CLASSIFIER FROM CountryTMP WHERE Country.ID=CountryTMP.ID),
SET CATEGORY = (SELECT CATEGORY FROM CountryTMP WHERE Country.ID=CountryTMP.ID),
SET ENABLED = (SELECT ENABLED FROM CountryTMP WHERE Country.ID=CountryTMP.ID);Csak akkor müxik, ha a beágyazott select-ek mindig csak egy sort adnak vissza.
-
L3zl13
nagyúr
Mysql + random:
RAND(), RAND(N)
Returns a random floating-point value v between 0 and 1 inclusive (that is, in the range 0 <= v <= 1.0). If an integer argument N is specified, it is used as the seed value, which produces a repeatable sequence.
...
To obtain a random integer R in the range i <= R <= j, use the expression FLOOR(i + RAND() * (j – i).
...
You cannot use a column with RAND() values in an ORDER BY clause, because ORDER BY would evaluate the column multiple times. However, you can retrieve rows in random order like this:
SELECT * FROM tbl_name ORDER BY RAND();
...
[link] -
L3zl13
nagyúr
Első körben talán valahogy így...
Persze lehet, hogy van jobb megoldás.
SELECT * FROM brick, [SELECT CONCAT(nev, region) as nev_reg FROM brick GROUP BY nev_reg having count(*) = 1]. AS [nev_reg] WHERE nev_reg = CONCAT(nev, region);
Jah, CONCAT MySQL függvény. Nem tudom te mit használsz...
[Szerkesztve] -
L3zl13
nagyúr
válasz
Szaki@Pécs
#66
üzenetére
Az övé azért nem jó, mert nem egyszerre vizsgálja a két paramétert. Szóval ha bármelyik paraméter szerepel a táblában, akkor már nem kerül bele a listába. Függetlenül attól, hogy a másik paraméterrel egy sorban szerepelt-e vagy sem...
Ps az enyém sem biztos, hogy jó, persze ezért próbáld ki.
Ha így nem megy, akkor még trükközhetsz olyannal, hogy:
delete from x where (param1+param2) not in (select param1+param2 from y)
+ helyett a megfelelő szöveg összefűzés művelettel
[Szerkesztve] -
L3zl13
nagyúr
Új hozzászólás Aktív témák
- Apple iPhone 17e – mágnesek ereje
- Gyúrósok ide!
- 5.1, 7.1 és gamer fejhallgatók
- Azonnali játékos kérdések órája
- Motorola Edge 50 Neo - az egyensúly gyengesége
- Formula-1
- Hivatalos a OnePlus 13 startdátuma
- Forza sorozat (Horizon/Motorsport)
- Okos otthon - Home Assistant, openHAB és más nyílt rendszerek
- iPhone topik
- További aktív témák...
- iPhone 13 Pro 256GB Grafit - 77% akku, dobozában, független
- Apple Watch Series S11 BT 46 mm, JET BLACK ALU , ÚJSZERŰ, üzletből, garancia 2028.03.18ig, Csere ON
- Lenovo X390 13,3" laptop matt kijelző / Intel i7-8665U / 16 GB DDR4 / 512 GB SSD / magyar bill.
- Macbook Pro 13" A2338 2020 M1 16GB 256GB (4)
- 50% kedvezmény Sennheiser Flex 5000 csinálj vezeték nélkülit a vezetékesből!
- Dell Latitude 5580,15.6",FHD,i5-6300U,8GB DDR4,256GB SSD,WIN11
- iPhone X 64GB 100% (3hónap Garancia)
- AKCIÓ! Asus PRIME H510M i5 11400 16GB DDR4 512GB SSD RX 6600 8GB Rampage SHIVA Adata 600W
- Amazon Kindle 10th Generation ébresztős tok
- ÚJ Bontatlan Sony Bravia K-65XR90 - 4K HDR Google Mini LED TV - 3 év garancia
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest


