[SQL] positie 1 lager

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

.NET developer

Functie Jij begint als .NET ontwikkelaar in een team met 10 andere Software Engineers. De werkzaamheden zijn afwisselend, zo kan het dat jij bezig bent met volledig nieuwe features of het door ontwikkelen van bestaande sites of shops. Wij ontwikkelen web applicaties, maar ook mobiele applicaties. Daarnaast bijt jij je soms ook van in externe koppelingen met systemen zoals een ERP. Als team is er een duidelijke focus m.b.t. het waarborgen van de performance en snelheid van webshops. Ook zijn wij expert op het gebied van configuratoren. Kortom enorm veel afwisselende werkzaamheden! Ook jouw werkplek kan afwisselend zijn. Soms heb

Bekijk vacature »

.NET Developer

Functie omschrijving Ben jij een senior .NET developer en heb jij tevens ervaring als teamlead? Ben jij iemand met een helikopterview en denk jij graag mee met de klanten? Dan zijn wij op zoek naar jou! Voor een geweldig bedrijf zijn wij namelijk op zoek naar een ervaren .NET developer. Het bedrijf houdt zich bezig met het ontwerpen en bouwen van websites, portalen en applicaties voor met name zorg- en onderwijsinstellingen en overheidsinstanties. Jouw taken: Het fungeren als Lead Developer; Het meedenken met de business (dit vergt commercieel inzicht); Het begeleiden van diverse projecten (van klein tot groot); Het ontwerpen

Bekijk vacature »

Front-end Developer

Do you want to work with the latest technologies on the development of new systems and applications? Create elegant interfaces using VueJS for thousands of users? Get moving and strengthen Nederlandse Loterij as a Front-end Developer. Thanks to your efforts, our services are always presented in style. As a Front-end Developer you are responsible for website development and improving customer experience based on data analyze. In this way, you directly contribute to a happy, healthy and sporty Netherlands. As a Front-end Developer you score by: Writing elegant, testable components without side-effects to provide functionality to the users Website development, adding

Bekijk vacature »

Integratie expert - Java Developer

Dit ga je doen Nieuw koppelingen ontwerpen, ontwikkelen en implementeren; Je schakelt met de klanten om hen zo goed mogelijk van dienst te zijn. Strategisch kijken naar nieuwe mogelijkheden op bestaande of nieuwe koppelingen zo effectief mogelijk te realiseren; Je bestaande toolset afwegen tegen nieuwe mogelijkheden om integratiedoelen steeds effectiever en/of effcienter te bewerkstelligen; Bestaande software koppelingen beheren, dit zijn koppelingen met zowel interne als externe systemen; Overleg met zowel directe collega's als met stakeholders om nieuwe integratieplannen concreet te maken; Je kunt de junioren meenemen op sleeptouw. Hier ga je werken Onze klant is op zoek naar een ervaren

Bekijk vacature »

Intern - Junior PHP ontwikkelaar in fris en jong t

Bedrijfsomschrijving Werk jij graag een in fris, flexibel en jong team? Bij ons ben jij vrij om te bepalen waar jij het liefst werkt en op de vrijdag komen wij gezellig bij elkaar op kantoor. Flexibiliteit en vrijheid zijn bij ons de norm en dat geeft jou de ruimte en energie om het beste uit jezelf te halen! Ons team bestaat uit vijf enthousiaste collega's die jou graag ondersteunen in zowel je persoonlijke als professionele ontwikkeling. Met twee ervaren Senior Developers als mentoren ben jij in goede handen. Wij zien onszelf als een vriendengroep die gezamenlijk werken aan iets moois

Bekijk vacature »

API Developer Red Hat Fuse

Dit ga je doen Als API Developer zal je verantwoordelijk zijn voor het: het maken van API's en het correct laten draaien van de API's op het platform. Hierdoor kom je in aanraking met Red Hat Fuse, Springt Boot, 3Scale, Red Hat SSO, Openshift en Azure DevOps; zorgen voor de kwaliteit van de ontwikkeling, integratie en prestaties van de API's; zorgen voor een stabiel integratieplatform. Hier ga je werken Deze organisatie is een toonaangevende speler in de vastgoedbranche en telt momenteel ruim 500 medewerkers. Met meer dan 150 applicaties staat er een complex applicatielandschap dat hoofdzakelijk op OpenShift, Azure en

Bekijk vacature »

.NET Developer te Naarden

Bedrijfsomschrijving Voor mijn klant ben ik op zoek naar een .NET Developer om het huidige team te komen versterken. Deze organisatie bevindt zich in de logistieke sector, en zij hebben een eigen ERP systeem ontwikkeld dat zij inzetten ter optimalisatie van de logistieke processen van haar eindklanten. Deze organisatie bestaat inmiddels al ruim 20 jaar, waarbij zij een duidelijke missie hebben, namelijk: het werk van de eindklant makkelijker maken door de systemen die zij leveren. Ze werken over heel de wereld, wat deze organisatie een echte internationale speler maakt. Binnen de organisatie kenmerken ze zich door een dynamische en professionele

Bekijk vacature »

Oracle APEX developer

Wat je gaat doen: Als Oracle APEX ontwikkelaar bij DPA werk je samen met collega’s aan de meest interessante opdrachten. Je zult je ervaring met SQL, PL/SQL, JavaScript, HTML en CSS inzetten om wensen van opdrachtgevers te vertalen naar technische oplossingen. Je werk is heel afwisselend, omdat DPA zich niet beperkt tot een specifieke branche. Zo ben je de ene keer bezig binnen de zorgsector, de andere keer is dit bij de overheid. Wat we vragen: Klinkt goed? Voor deze functie breng je het volgende mee: Je hebt een hbo- of universitaire opleiding afgerond Je hebt 2 tot 5 jaar

Bekijk vacature »

Senior PHP developer

Functie Jouw werkzaamheden zullen grotendeels bestaan uit het in teamverband ontwerpen, vernieuwen en door ontwikkelen van het systeem. Het is echt back-end werk (bijvoorbeeld het doorontwikkelen van een API) en dit moet je dan ook liggen. Ze zijn niet persee gebonden aan talen of tools maar gebruiken graag de technieken die het beste aansluiten op de gegeven oplossing. Voor nieuwe (versies van) componenten maken ze veelal gebruik van Go(lang). Bij aanpassingen aan bestaande onderdelen gebeurt dit in PHP en C++. Het team is heel divers, er hangt een relaxte sfeer en ze organiseren regelmatig leuke music nights, game nights e.d.

Bekijk vacature »

Lead developer (PHP, Symfony, DDD)

Functie Als Lead developer zorg je ervoor dat het team (bestaande uit zowel junior als ervaren developers) in staat is om de kwaliteit van de software (en code) verder te verhogen. In samenwerking met het team, de product owner en de andere lead developers zet je technische lijnen uit en bepaal je de prioriteiten per sprint. Lijkt het jou interessant om complexe problemen op te lossen en bijvoorbeeld een nieuwe applicatiestructuur in Symfony op te zetten? Dan komen wij graag met je in contact. Eisen • HBO werk- en denkniveau (ze kijken niet naar papieren, maar naar denkniveau, motivatie en

Bekijk vacature »

Lead C++ Developer

De rol van Lead C++ Developer Als Lead C++ developer bij KUBUS word je verantwoordelijk voor het implementatie design van requirements en de software architectuur van de desktop applicaties van BIMcollab, ons platform voor 3D model-validatie en issue-management bedoeld om de kwaliteit van 3D design-modellen voor gebouwen te verbeteren. Betere 3D modellen leiden tot betere gebouwen, dus zo draag je bij aan verduurzaming van de gebouwde omgeving met slimmer gebruik van materialen, minder verspilling en energie-efficiënte gebouwen. Een goede gebruikerservaring staat bij ons hoog in het vaandel; we gaan in onze ontwikkeling voor innovatie en kwaliteit. In je rol als

Bekijk vacature »

PHP/Symfony developer

Functieomschrijving Vanuit het hoofdkantoor in omgeving Bergen op Zoom ben je als PHP/Symfony Developer niet alleen bezig met software ontwikkeling. Je bent buiten ontwikkeling ook continu bezig met het zoeken naar nieuwe trends en ontwikkelingen die van waarde kunnen zijn voor de efficiëntie van software ontwikkeling. Techstack: PHP, Symfony & mySQL. Jouw takenpakket ziet er als volgt uit: Het ontwerpen en implementeren van webapplicaties met het Symfony-framework; Het testen van ontwikkelde applicaties om te zorgen dat ze goed functioneren en voldoen aan de eisen van de klanten; Het schrijven van een schone en efficiënte code volgens het Symfony framework; Onderhouden

Bekijk vacature »

Functioneel applicatiebeheerder - SOP-SYS-SAM

TenneT is hard groeiend om de onze ambities waar te kunnen maken. Zo nemen wij een leidende rol in het aanjagen van de energietransitie. Het werven van nieuw talent speelt daarin een cruciale rol. Wij zijn op zoek naar een gedreven Functioneel Applicatiebeheerder op onze locatie Arnhem die hieraan wil bijdragen en misschien ben jij dat wel? Jouw bijdrage aan TenneT Je gaat samenwerken in een team van circa 15 functioneel applicatiebeheerders en gaat onderdeel uitmaken van een DevOps team. Met dit team ga je applicaties (laten) ontwikkelen en beheren. Hierbij concentreer je je vooral op de functionele aspecten, zodat

Bekijk vacature »

Software ontwikkelaar

Ben jij graag bezig met verschillende projecten? Vind jij beleving van klanten én medewerkers ook belangrijk? Wij zijn vanwege de doorontwikkeling van het applicatielandschap van onze opdrachtgever op zoek naar een fulltime software ontwikkelaar. Omschrijving Jij en jouw collega’s zijn verantwoordelijk voor de continuïteit en waarborging van het applicatielandschap. Om de processen vloeiend te laten verlopen is software ontwikkeling daarom van essentieel belang. Onze opdrachtgever doet dit voornamelijk zelf, met door hun eigen ontwikkelde applicaties. Dit betekent dat jij: functionele eisen vertaalt naar gebruiksvriendelijke software; tijdens SCRUM sessies advies geeft over het te bouwen ontwerp; nieuwe software ontwikkelt en het

Bekijk vacature »

Senior Front end developer Angular

Functie Er zijn momenteel 5 SCRUM-teams waarvan drie gefocust zijn op DevOps en de huidige projecten en twee op innovatie van de platformen. Jij zal onderdeel worden van het innovatie Scrum team. De 2 multidisciplinaire innovatie teams bestaan momenteel uit 14 werknemers. Jij als senior Front end developer wordt onderdeel van onze innovatieteams. De innovatieteams houden zich bezig met het door ontwikkelen van de huidige producten en denken na over nieuwe functionaliteiten. Binnen de rol van Front end developer krijg je veel vrijheid en kan je je dag zelf indelen. Dingen waar jij je dagelijks mee bezig zult houden is

Bekijk vacature »
Robin de Vries

Robin de Vries

11/04/2009 10:59:00
Quote Anchor link
ik heb een tabel
(id int(11),position int(11),img varchar(255),name varchar(255))

ik wil een rij ertussen verwijderen, dus moeten alle rijen waarvan de positie hoger is dan de rij die verwijderd wordt, met 1 worden verlaagd. Van de rij die verwijderd wordt heb ik de id. Nu wil ik met 1 query de rijen ophogen, zonder eerst de positie v/d rij op te halen, dus ik dacht aan iets zoals:

UPDATE celp_software_os SET position=position-1 WHERE position>(SELECT position FROM celp_software_os WHERE id=8)

Het lijkt mij dat het klopt op het SELECT deel na, wat moet daar komen te staan?
 
PHP hulp

PHP hulp

25/04/2024 19:53:54
 
Frank -

Frank -

11/04/2009 11:11:00
Quote Anchor link
Quote:
ik wil een rij ertussen verwijderen, dus moeten alle rijen waarvan de positie hoger is dan de rij die verwijderd wordt, met 1 worden verlaagd

Dat snap ik niet.

Voorbeeldje:
1
2
3

En nu verwijder ik de waarde 2 en hou ik dus over:
1
3

Dit is dus exact dezelfde volgorde als voorheen, alleen mist er nu 1 record. So what?

Een integer kan een paar miljard waardes bevatten, de kans dat dit een probleem wordt, is bijzonder klein. En mocht het een probleem worden, verkoop je jouw product voor heel veel geld of converteer je de INT naar een BIGINT.
 
Robin de Vries

Robin de Vries

11/04/2009 11:14:00
Quote Anchor link
het gaat erom dat de id's een grote wirwar mogen zijn (daarvoor zijn het id's), maar de positie id's moeten aansluitend zijn, zo kun je de volgorde op de website (van bijv. menu items) bepalen.

vb:
id | position |
1 | 1
2 | 3
5 | 2
7 | 5
8 | 4

nu verwijder ik een rij (id=5).
dan wil ik dat dat de positie van 3 rijen met 1 wordt verlaagd (id=2,7,8)
zodat het word:
id | position |
1 | 1
2 | 2
7 | 4
8 | 3
 
Frank -

Frank -

11/04/2009 11:24:00
Quote Anchor link
Is niet nodig, je moet niet denken in de nummers maar in de prioriteit van deze nummers. Nr. 1 komt altijd als eerste, nr. 2 komt altijd voor nr. 3,4,5,6,7, etc. maar ná nr. 1, mocht deze aanwezig zijn. Het doet dus helemaal niet ter zake of 1 nu wel of niet aanwezig is, de volgorde blijft hetzelfde. De waarde "2" kan afhankelijk van de andere waardes en de gewenste sortering (ASC, DESC of random) een bepaalde positie krijgen. Het enige dat je met de kolom position wilt doen, is een relatieve positie geven ten opzichte van de andere waardes in deze kolom. In de browser kun je iedere vorm van presentatie kiezen, dat staat helemaal los van de onderlinge posities.

Je probeert een probleem op te lossen die er helemaal niet is.
Gewijzigd op 01/01/1970 01:00:00 door Frank -
 
Robin de Vries

Robin de Vries

11/04/2009 11:29:00
Quote Anchor link
ik snap best dat er manieren zijn om dit veel beter te doen en slimmer aan te pakken. (Ik zie wel dingen van deze methode terug in SGP, een portaal van phpbb3).
Mijn vraag was, wat de juiste sql-code om mijn 'onhandige' plan te bereiken..

Ik waardeer je commentaar, maar voor ingewikkeldere volgorde veranderingen is het voor mij handiger als de 'relatieve' nummers aansluitend zijn.
 
Frank -

Frank -

11/04/2009 11:41:00
Quote Anchor link
Tja, wat jij wil:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
DELETE FROM tabelnaam WHERE positie = 3;
UPDATE
  tabelnaam
SET
  positie = positie -1
WHERE
  positie > 3;

Let er heel goed op dat dit fout gaat wanneer je meerdere records in 1x verwijdert en dat je altijd een update uitvoert nadat je een delete hebt gedaan. De update kun je automatiseren met een trigger, het beperken van de delete tot slechts 1 record, kun je niet afdwingen. De trigger zal dan ook de mist in gaan. En dus ga je hier bewust risico's nemen zonder dat er enige winst tegenover staat.

Quote:
maar voor ingewikkeldere volgorde veranderingen is het voor mij handiger als de 'relatieve' nummers aansluitend zijn.
Denk even out of the box en verzin een betere oplossing. Je doet nu aannames (dat bepaalde getallen aanwezig zijn) en deze aannames gaan de mist in wanneer er meer dan 1 concurrent user op jouw database zit.

En een corrupte database is niet handig.
 
Robin de Vries

Robin de Vries

11/04/2009 11:46:00
Quote Anchor link
nog 1 dingetje, ik heb alleen de id, niet de positie... dus eerst moet de positie aan de hand v/d id worden bepaald.
 
Frank -

Frank -

11/04/2009 12:00:00
Quote Anchor link
In PostgreSQL kun je de positie opvragen in de DELETE:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
DELETE FROM
  tabelnaam
WHERE
  id = 3
RETURNING
  positie;

Deze query verwijdert het record met id 3 en geeft aan jouw applicatie de oude positie van dit record door. Het resultaat dus even fetchen en gebruiken als input voor de UPDATE.

Met MySQL (en andere databases) heb je een extra SELECT-query nodig die je voor de DELETE uitvoert.

Maar vergeet de trigger niet, die weet ook wat de positie is, zie OLD.positie.
Gewijzigd op 01/01/1970 01:00:00 door Frank -
 
Robin de Vries

Robin de Vries

11/04/2009 12:05:00
Quote Anchor link
bedankt voor je tips, ik zal er zeker rekening mee houden als er een positie systeem komt die door meer dan 1 gebruiker gebruikt zal worden. (Dit is voor het admin control panel)...
 
Frank -

Frank -

11/04/2009 12:11:00
Quote Anchor link
Tja, als je nu had uitgelegd wat het daadwerkelijke probleem is, dan hadden we dat kunnen oplossen. Dan hoef jij er nooit meer aan te denken dat je met meerdere users in de problemen kunt komen.

Gemiste kans.
 
Roel -

Roel -

11/04/2009 12:25:00
Quote Anchor link
Wtf, hoe komt mijn reactie hier terecht?
Gewijzigd op 01/01/1970 01:00:00 door Roel -
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.