Új hozzászólás Aktív témák
-
-
sztanozs
veterán
SELECT t.id, t.topic_name, p.lastpost
FROM topics AS t, (
SELECT topic_id, max(p.send_date) as lastpost
FROM posts
GROUP BY topic_id
ORDER BY lastpost DESC
LIMIT 0, 10) AS p
WHERE t.id=p.topic_id[ Szerkesztve ]
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
Ez egy stored procedure? Vagy hova tervezed beírni az @i = @i + 1 -et?
Ha csak egy lekérdezés, akkor inkább használj @i-t és @j-t, ahol @j-t @i+1-el inicializálod.[ Szerkesztve ]
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
DavidPetson
csendes tag
Kiegészítettem ezzel:
$sql = "SELECT * FROM member WHERE username = $username";
Kaptam ezt:
mysql_fetch_array() expects parameter 1 to be resource, boolean given
Ezt próbáltam mindenhogy, és mindig ez a válasza rá
Elvileg azt menti:
$_SESSION['SESS_MEMBER_ID'] = $member['mem_id'];
[ Szerkesztve ]
-
martonx
veterán
Nem értettem teljesen a kérdésedet, de valami ilyesmi dinamikus lekérdezést szeretnél?
https://www.mssqltips.com/sqlservertip/1160/execute-dynamic-sql-commands-in-sql-server/
Azaz exec ('select * from table') - ahol a stringed igaziból bármi lehet, azt szépen végig fogja hajtani az sql motor.
Én kérek elnézést!
-
kezdosql
tag
-
kezdosql
tag
Access2000 a feltetel, igy nem volt sok jelentkezo ra. Most mar tudom, hogy eleg dolgozgatnom, mert csak fizetgetni akarnak.
Eredetileg "normalisan" akartam megcsinalni, embereken belul alkalmazottak, de pont ok akartak, hogy csak az auto a lenyeg es azzal kapcsolatban kell minden, reszletesen, kulon. Most meg rajottek, hogy megis ugy kene, ahogy eredetileg javasoltam, mert az adatbevitel ugy sokkal egyszerubb. -
Diopapa
addikt
Óóóóóóóó hogy *********!!!!! Nagyon köszi!!!! Tegnap óta rágódtam rajta, hogy mi a fenét szúrtam el, de nem ellenőriztem le ezt a táblát...
De láma vagyok..
Köszi még egyszer, ez most jó volt...
Citizen Diopapa / Commander Diopapa "SC csomag olyan, mint a barackfa, unokáidnak veszed - .tnm / De pálinkát nemlehet főzni belűle - *SkyS1gn"
-
Fecogame
veterán
-
Petya25
addikt
Ha csak annyit szeretnél, hogy az egyik DB-ből átolvass egy másik szerver DB-jébe akkor ezzel nem kell így trükközni.
Csinálsz egy sql usert a távoli DB-ben.
Itt a Linked Server nevébe beírod a távoli szerver nevét, a Security fülön meg megadott Remote loginnak a távoli sql usert a jelszóval.
És átolvasol teljes útvonallal: select * from [gép].[db].dbo.[tábla]Antonio Coimbra de la Coronilla y Azevedo, bizony!
-
Cathfaern
nagyúr
Egy darab update-et kell írni, abban csak lecserélgetni az ID-kat. Nem úgy gondoltam, hogy kézzel irogassa át a táblákat Sok mindent lehet rá írni persze, de ha 50x kell megcsinálni, akkor bármit is írsz rá az tovább fog tartani, mint ha megcsinálod kézzel. Feltéve, hogy elsőre jól írsz meg mindent, mert ha már valamit debugolni kell (akár egy elgépelést), akkor sokkal tovább fog tartani
-
nagyúr
sajnos csak a pivot xml viseli el a dinamikus queryt, egyébként marad, amit Ispy is írt, mert a pivotnál szükséges a transzponálandó oszlopok pontos ismerete.
[ Szerkesztve ]
Tudod, mit jelent az, hogy nemezis? Az érintett, erősebb fél kinyilatkoztatása a méltó büntetés mértékét illetően. Az érintett fél jelen esetben egy szadista állat... én.
-
sztanozs
veterán
A második ezért találja meg: http://stackoverflow.com/a/16791526
Gyakorlatilag Integer-t cast-ol a stringből, és a
cast("1B" as int) = 1
igaz lesz.Mysql-ben az underscore az 1-karakter helyettesítő elem: [link]
[ Szerkesztve ]
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
DS39
nagyúr
vagy ha nincs egy konkrét érték amit vizsgálj, akkor az INSERTED selectjében ki cserélhetetd azt az oszlopértéket a belső selected sum-jára.
SELECT oszlop1, oszlop2,
(SELECT SUM (TELEPULES.LAKOSOK) FROM TELEPULES
WHERE TELEPULES.SHAPE.STWithin(I.SHAPE)=1),
oszlop4, oszlop5 ....
FROM INSERTED I(@terulet helyett bekerülendő shape oszlop értékét betéve, már nem kell tudd az objectid-t)
[ Szerkesztve ]
-
kw3v865
senior tag
Köszönöm, így már elég jól működik, de még nem tökéletes: már csak arra kell megoldást találni, hogy ha egynél több sort szúrok be az övezetek táblába, akkor is működjön.
Tehát ha pl. 2 új sor van, akkor ezt írja ki: Subquery returned more than 1 value. This is not permitted when the subquery follows =, !=, <, <= , >, >= or when the subquery is used as an expression.
Jól gondolom, hogy ehhez kurzort kellene használni?
-
kw3v865
senior tag
Egyelőre így néz ki jelenleg a triggerem a kurzorral, de a probléma továbbra is ugyanaz.
ALTER TRIGGER nepesseg_szum ON OVEZETEK
AFTER INSERT
AS
BEGINDECLARE @TERULET GEOMETRY
DECLARE @ID INTDECLARE @kurzor CURSOR
SET @kurzor = cursor FOR
SELECT SHAPE, OBJECTID FROM INSERTEDOPEN @kurzor
FETCH NEXT FROM @kurzor INTO @TERULET, @IDWHILE @@FETCH_STATUS = 0
BEGIN
UPDATE OVEZETEK SET Nepesseg_ossz = (SELECT SUM(n.lakosok) from NEPESSEG_EOV N
WHERE N.SHAPE.STWithin(@TERULET)=1) WHERE @ID=(SELECT OBJECTID FROM INSERTED);FETCH NEXT FROM @kurzor INTO @TERULET, @ID
ENDCLOSE @kurzor
DEALLOCATE @kurzor
END;Vajon hol ronthattam el?
-
kw3v865
senior tag
Így gondoltad?
CREATE TRIGGER nepesseg_szum ON OVEZETEK
INSTEAD OF INSERT
AS
BEGIN
INSERT INTO OVEZETEK (OBJECTID, SHAPE, Nepesseg_ossz) SELECT I.OBJECTID, I.SHAPE, (SELECT SUM(n.lakosok) from NEPESSEG n
WHERE N.SHAPE.STWithin(I.SHAPE)=1) FROM INSERTED IEND;
Nem jó, mert "Unspecified error occured on SQL Server. Connection amy be terminated by server", miután megrajzolom az övezet poligont, majd mentem (commit-olom).
-
kw3v865
senior tag
Most próbáltam így is, de hiába, sajnos nem megy.
Igen, a Management Studioban futtatom. Az övezeteket pedig ArcGIS-ben rajzolom.Tehát a lényeg az hogy az alábbival viszont jól lefut, HA csak egy sort commit-olok egyszerre:
ALTER TRIGGER nepesseg_szum ON OVEZETEK
AFTER INSERT
AS
BEGIN
DECLARE @TERULET GEOMETRYSET @TERULET = (SELECT SHAPE FROM INSERTED)
UPDATE OVEZETEK SET Nepesseg_ossz = (SELECT SUM(n.lakosok) from NEPESSEG_EOV N
WHERE N.SHAPE.STWithin(@TERULET)=1) WHERE OVEZETEK.OBJECTID=(SELECT OBJECTID FROM INSERTED); -
Fundiego
tag
Köszi, ez így jó
3763
Sajnos régebben voltak futamok ahol verseny közben a pilóták átadták egymásnak a kocsit, így előfordult a hivatalos végeredménynél, hogy pl 3 db 2. hely is lett ezáltal. A versenyzőknél ezt úgy jegyzik le, hogy 3 db 2. hely viszont a csapatoknál ez csak 1-nek felel meg.[ Szerkesztve ]
-
Fundiego
tag
Köszönöm.
Egyébként ez már php de mért dob ki hibát?
hogy kellene ezt a SET @rank-ot és select @rank-ot kiíratni php-ban? vmiért nem akar működni, hibát dob ki. (a tábla kiíratását nem illesztettem be most, de nem az a probléma)$servername = '*';
$username = '*';
$password = '*';
$dbname = '*';// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
mysqli_set_charset($conn,'utf8');$sql1 = "SET @rank=0";
$sql2 = "select @rank:=@rank+1 AS rank, s.* FROM
(
SELECT gyumolcs, sum(mennyiseg)
FROM gyumolcs Where ev='2016'
group by gyumolcs
ORDER BY sum(mennyiseg) DESC
) s";$result = mysqli_query($conn, $sql1,$sql2) or die("Bad Query: $sql");
-
nyunyu
félisten
Egyáltalán kell egy plusz lekérdezés az Oracle specifikus from dual szintaxissal?
Nem lenne egyszerűbb egy
select nvl(count(*),0) from tablanev;[szerk:]Hmm,Oracle 11G2 amúgy is 0-t ad vissza count(*)-ra, ha nincs egy rekord se a táblában, nem NULL-t.
[ Szerkesztve ]
Hello IT! Have you tried turning it off and on again?
-
nyunyu
félisten
Probléma az, hogy a WHERE után írt feltétel az globális.
Ha oda azt írja, hogy t19.ertek>19, akkor minden olyan rekordot vissza fog adni, ahol ez teljesül.
NULL értékekre definíció szerint <,=,> hasonlítás sem teljesül, emiatt kiszűri azokat, ahol csak a T20 táblában lenne jó érték, de a T19-ben nincs.LEFT/RIGHT/FULL JOINkor emiatt fokozottan figyelni kell a NULLokra.
Tehát valami ilyesmit tud csinálni, hogy
where (t19.ertek is null OR t19.ertek>19)
and ... többi feltétel.[ Szerkesztve ]
Hello IT! Have you tried turning it off and on again?
-
Új hozzászólás Aktív témák
- Üzletből,DELL garanciával, Dell XPS 9310 2in1 ultrabook, i7-1165G7/32RAM/1TBSSD/13,4"UHD TOCH
- Üzletből, gyártói garanciával, Lenovo Yoga Slim 7 Pro, i5/16GBRAM/512GBSSD/14,1" 2,8K OLED
- Realme GT Neo2 5G 256GB
- M.2 2280 256GB SSD-k eladók Ingyen posta
- DELL WD15 Type-C Fekete +130W Töltő Ingyen szállítás
- Fujitsu Esprimo V5535 Core 2 T2330/2x1GB/120GB HDD/Windows Embedded Standard 7 (2025-ig támogatott)
- HP Pavilon 15 - 15.6" IPS 144Hz / Ryzen 7 5800H / 16Gb / 512Gb NVME / nVidia RTX 3050 Ti / GARANCIA
- Rtx 2060
- Ubiquiti Security Gateway USG-3P
- Eladó Új Samsung Neo QLED QN85D, QN90D, QN95D 4k 2024-es modellek