MYSQL LIKE,CONTAINS vraagje

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Front end developer binnen het onderwijs

Functie Het doel van dit team is om te zorgen dat de studenten altijd op de hoogte zijn van relevante informatie en de mogelijkheid hebben om online vragen te stellen. Hiervoor hebben ze een portal ontwikkeld. De app is echt een greenfield project met een eigen inrichting middels cloud. De ontwikkeling wordt gedaan door gebruik te maken van oa. Javascript, React, CSS, Next.js, GraphQL in een Azure Cloud omgeving. Daarnaast gebruiken ze tooling als Figma, storybook, Jest en Github. De complexiteit in deze rol zit hem in het feit dat data uit verschillende bronsystemen komt waarbij er zowel gekoppeld wordt

Bekijk vacature »

Front-end Developer

Dit ga je doen Het onderhouden, ontwikkelen en testen van front-end software van diverse klant- en medewerkersapplicaties; Het ontwikkelen van maatwerk front-end oplossingen in Vue.js en participeren in een scrumteam; Mede-verantwoordelijk voor het begeleiden en coachen van drie junior front-end developers; Verantwoordelijk voor code-reviews en het opstellen van de juiste documentatie zoals userstories en API ontwerp; Participeren in diverse projecten t.b.v. optimalisatie van diverse applicaties; Het opzetten van API koppelingen met externe applicaties. Hier ga je werken Betreffende organisatie is gevestigd in de regio van Swifterbant en is al ruim 20 jaar lang bedreven in het ontwikkelen en aanbieden van

Bekijk vacature »

C# developer

Sogeti is een organisatie met een goede werksfeer en zo min mogelijk hiërarchische verhoudingen. Ga je bij ons als C# Developer aan de slag? Dan werk je dagelijks met collega’s aan de mooiste IT-projecten. Deze snelgroeiende groep collega’s krijgt energie van hun vak en dat merk je op de werkvloer. Natuurlijk krijg jij de mogelijkheid je te certificeren. We organiseren regelmatig technische Meet-ups en doen we veel aan kennisdeling. Mede hierdoor zij wij dit jaar Microsoft Partner of the Year geworden. Sogetisten staan klaar voor elkaar, hebben lol met elkaar en daarmee behalen we de mooiste resultaten! Werken bij Sogeti

Bekijk vacature »

Medior Java developer (fullstack)

Wat je gaat doen: Of beter nog, wat wil jij doen? Binnen DPA GEOS zijn we dan ook op zoek naar enthousiaste Java developers om ons development team te versterken. Als Java developer werk je in Agile/Scrum teams bij onze klanten en daarbij kun je eventueel ook andere ontwikkelaars begeleiden in het softwareontwikkelproces. Verder draag je positief bij aan de teamgeest binnen een projectteam en je kijkt verder dan je eigen rol. Je gaat software maken voor verschillende opdrachtgevers in jouw regio. Je bent een professional die het IT-vak serieus neemt en kwaliteit levert. Je leert snel vanwege je diepgaande

Bekijk vacature »

Software Developer

Dit ga je doen Je bent verantwoordelijk voor de warehouse applicatie die een integratie heeft met de PLC laag; Je ontwikkelt in C#/.Net; Je werkt mee aan de migratie naar .NET 6; Je bent verantwoordelijk voor het ontwikkelen van interfaces en het visualiseren van componenten; Je denkt mee over het design voor business oplossingen; Je bent verantwoordelijk voor het testen van de gebouwde oplossing. Hier ga je werken Voor een internationale organisatie in de transport zijn wij momenteel op zoek naar een Software Developer. Zij zijn wereldwijd de grootste speler en lopen voorop met het automatiseren van alle processen van

Bekijk vacature »

Back-end Developer

Functieomschrijving Heb jij kort geleden jouw HBO ICT diploma in ontvangst mogen nemen? Of ben je toe aan een nieuwe stap? Voor een softwarebedrijf in regio Oosterhout zijn wij op zoek naar een back-end developer met kennis of ervaring met C# en SQL. Je draagt bij aan de implementatie van aanpassingen, verbeteringen en aanvullingen in de C# based applicaties; Je test de software en ontwikkelt deze door; Je brengt de aanpassingssuggesties van klanten in kaart, om ze vervolgens te analyseren en daarna te concluderen of de aanpassing een verbetering is; Je houdt je bezig met het ontwikkelen van nieuwe functionaliteiten;

Bekijk vacature »

Software Programmeur PHP - JAVA

Functie Voor een opdrachtgever in omgeving Zoetermeer zijn wij op zoek naar een ontwikkelaar ter versterking van het huidige developers team. Heb jij altijd al willen werken voor een bedrijf, dat veilige netwerkverbindingen levert, door middel van veilige oplossingen, die door middel van de nieuwste technologieën ontwikkelt zijn? Stop dan nu met zoeken! Hoe kan jouw dag er straks uitzien? Je gaat software en webapplicaties ontwikkelen met behulp van de talen C / C++ / PHP. Je gaat technische klussen uitvoeren op locatie bij klanten. Je onderhoudt contact met de projectleider om er zeker van te zijn dat een projecten

Bekijk vacature »

Full Stack Java ontwikkelaar

Functieomschrijving Voor de politie zijn wij op zoek naar een Full stack Java ontwikkelaar. Als ervaren full stack Java ontwikkelaar binnen de gewenste deadlines meewerken aan de totstandkoming van de gewenste werkzaamheden. Taken Upgraden van GeoServer, SOLR, Oracle Spatial database, Tomcat Migreren Oracle Spatial naar PostgreSQL/PostGIS Migreren SOLR naar ElasticSearch Geografische gegevens op het interne netwerk beschikbaar maken Doorontwikkelen en actualiseren van de geografische services Het up to date brengen van de CI/CD pipeline, samen met medewerkers die verantwoordelijk zijn voor de CI/CD tooling Aanspreekbaar op de solution architectuur en stemt die met collega's in het cluster Geo De opdracht

Bekijk vacature »

Back end Node.js developer

Functie Het ontwikkelteam bestaat momenteel uit 5 (back-end) Developers, 2 systeembeheerders, 1 DevOps engineer, 1 Tech Lead en 2 Scrum Masters. Samen wordt er doorontwikkeld aan twee SaaS-platformen die in een hoog tempo doorontwikkeld moeten worden. Omdat innovatie een belangrijk speerpunt binnen de organisatie is, wordt er ook continu naar snellere en slimmere oplossingen te bedenken en realiseren. Als Back-end Developer hou jij je dagelijks bezig met vraagstukken zoals: API-development, high volume datastromen, het ontwikkelen van Bots aan de hand van A.I. Daarnaast denk en werk jij mee aan de onlineapplicaties voor klanten. Er wordt zelfstandig en in teamverband gewerkt

Bekijk vacature »

Embedded Software Developer

Functie omschrijving Voor een mooi softwarebedrijf in omgeving Moordrecht zijn wij op zoek naar een Embedded Software developer. Ben jij enthousiast en een echte team player? Lees dan snel of dit iets voor jou is! Binnen deze rol houdt jij je bezig met alle werkzaamheden die nodig zijn om een functionaliteit te bouwen. Denk aan ontwerpen, architectuur, programmeren en algoritmes. Je voert test en validatie werkzaamheden uit bij de implementatie bij de klant. Ben jij een Embedded Software Developer die affiniteit heeft met de allernieuwste technieken? Laat dan snel wat van je horen! Bedrijfsprofiel Onze opdrachtgever bestaat uit een groot

Bekijk vacature »

Back-end Software Developer

Functie omschrijving Ben jij op zoek naar een uitdagende development functie bij een klein gespecialiseerd softwarebedrijf? Wil jij graag hybride werken (combi tussen thuis + kantoor), loop jij warm voor maatwerk software en voel jij je prettig in een informele cultuur? Zoek dan niet verder! Reageer direct! Voor een gewilde werkgever in omgeving Tilburg zoeken wij een back-end software developer met een aantal jaar werkervaring. Je gaat werken voor een klein softwarebedrijf dat gespecialiseerd is in de ontwikkeling van integratiesoftware. Jouw werkzaamheden zien er als volgt uit: In een klein team met 4 ontwikkelaars houd jij je bezig met afwisselende

Bekijk vacature »

OutSystems Developer

Dit ga je doen Het van scratch af aan ontwikkelen van applicaties met OutSystems; Het aanhaken bij diverse projecten binnen de organisatie; Schakelen met de business; Meedenken over de mogelijkheden van het platform binnen de organisatie. 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, bestaande uit standaard- en maatwerkapplicaties. De maatwerkapplicaties worden ontwikkeld door een inhouse development team. Het doel voor de komende periode is het verder vernieuwen en optimaliseren van het huidige applicatielandschap. Zo staat de organisatie aan

Bekijk vacature »

Senior Organisatieontwikkelaar

Als Organisatieontwikkelaar zorg je ervoor dat we in het magazijn van Coolblue altijd vooruit voetballen op het gebied Medewerker en Organisatie Ontwikkeling. Zo draag je bij aan een toekomstbestendig magazijn waar we klanten én medewerkers elke dag blijven verwonderen. Wat doe je als Senior Organisatieontwikkelaar bij Coolblue? Als Organisatieontwikkelaar werk je voor het magazijn van Coolblue. Je krijgt er energie van om continue te bouwen aan een toekomstbestendige organisatie. Dat doe je samen met 17 collega's in het HR-team, ieder met een eigen specialisme. Je werkt graag zelfstandig en je weet snel je weg te vinden als verandermanager. Ook ben

Bekijk vacature »

Laravel developer

Zie jij mogelijkheden om onze tooling technisch te verbeteren en uit te bouwen? Over Jobmatix Jobmatix is een innovatieve en internationale speler op het gebied van jobmarketing. Onze jobmarketing automation tool helpt organisaties bij het aantrekken van nieuw talent door vacatures digitaal, geautomatiseerd en op een efficiënte manier te adverteren en onder de aandacht te brengen bij de doelgroep op 25+ jobboards. Volledig performance-based, waarbij organisaties betalen op basis van cost per click of cost per applicant. Maandelijks wordt onze jobmarketing automation tool al gebruikt door vele directe werkgevers, intermediairs en mediabureaus, waaronder Picnic, Rijkswaterstaat, AdverOnline, Schiphol, DPA, Teleperformance en

Bekijk vacature »

Creatieve Front-end developer gezocht!

Functie Het front-end team bestaat momenteel uit 4 collega’s en is hard aan het groeien! Samen leveren jullie een essentiële bijdrage aan de applicaties die ze voor hun klanten realiseren. Je werkt in het front-end team samen met de back-end teams en product owners om te zorgen dat de applicaties een fijne gebruikerservaring opleveren. Jouw expertise zorgt ervoor dat de juiste keuzes gemaakt worden qua techniek en ontwerp, van back-end tot aan gebruiker. In samenspraak met je team bepalen jullie de beste keuze voor techniek. Ook is er altijd ruimte om nieuwe technieken te ontdekken. Eisen • Je hebt gedegen

Bekijk vacature »
Furio Scripting

Furio Scripting

18/10/2017 13:26:44
Quote Anchor link
Beste forumleden,

Ik wil graag kunnen zoeken op de bedrijfsnaam op basis wat de eindgebruiker invoert.

IK heb een bedrijf genaamd Emtek Ergonomics.

Als ik zoek op Emtek vind die dit bedrijf wel maar als ik zoek op bijv: emtek-test of koekie-emtek vind die helemaal niets.

Welke functie zoekt gewoon op alles zodat die altijd kijkt of akarakters voorkomen in de hele string in de klom?

Toevoeging op 18/10/2017 13:31:40:

Hier vind ook niets op:

SELECT * FROM bedrijven WHERE LOCATE('emtek-ergonomics---bureaustoel-op-maat',bedrijfsnaam)

Maar dit vind die wel:

SELECT * FROM bedrijven WHERE LOCATE('emtek',bedrijfsnaam)
 
PHP hulp

PHP hulp

26/05/2026 12:29:32
 
Rob Doemaarwat

Rob Doemaarwat

18/10/2017 14:09:07
Quote Anchor link
Quote:
Welke functie zoekt gewoon op alles zodat die altijd kijkt of akarakters voorkomen in de hele string in de klom?


De functie die je zelf schrijft ;-)

Hak je hele zoek-string in stukken ("woorden"), bijvoorbeeld met preg_split('/\\W+/',$search)

Vervolgens zoek je alle bedrijven die op tenminste van een van deze woorden een LIKE match heeft. Degene met de meeste matches (woorden) toon je bovenaan.
 
Thomas van den Heuvel

Thomas van den Heuvel

18/10/2017 15:43:02
Quote Anchor link
De eerste LOCATE() levert waarschijnlijk niets op omdat LOCATE() exacte matches uitvoert, en blijkbaar niets (exact) kon matchen.

Wat je zou kunnen doen:
- volg de suggestie van @Rob op
- gebruik fulltext searches, dit houdt wel in dat je goed nadenkt over hoe je indexeert en hoe je dit opzet
- maak gebruik van externe oplossingen om text te indexeren
- verander de manier waarop je zoekt, introduceer bijvoorbeeld keywords/tags, en laat je zoekfunctionaliteit hier mee werken, of maak gebruik van een soort van Faceted Search waarbij je een collectie data steeds specifieker filtert
 
Furio Scripting

Furio Scripting

18/10/2017 15:44:35
Quote Anchor link
Rob Doemaarwat op 18/10/2017 14:09:07:
Quote:
Welke functie zoekt gewoon op alles zodat die altijd kijkt of akarakters voorkomen in de hele string in de klom?


De functie die je zelf schrijft ;-)

Hak je hele zoek-string in stukken ("woorden"), bijvoorbeeld met preg_split('/\\W+/',$search)

Vervolgens zoek je alle bedrijven die op tenminste van een van deze woorden een LIKE match heeft. Degene met de meeste matches (woorden) toon je bovenaan.


Kan je hier een voorbeeld voor geven in code?

$input = "emtek-ergonomics---bureaustoel-op-maat"

Als iemand zoekt op iets wat spaties heb vervang ik deze al door "-" dus hier kan ik de woorden op splitten vermoed ik.

Hoe gaat dit er dan in de sql query uitzien?
 
Rob Doemaarwat

Rob Doemaarwat

18/10/2017 15:50:57
Quote Anchor link
Stel ik zoek op twee woorden: "foo" en "bar" (voorheen "foo---bar")
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
select * from bedrijven
where bedrijfsnaam like "%foo%" or bedrijfsnaam like "%bar%"
order by if(bedrijfsnaam like "%foo%",0,1) + if(bedrijfsnaam like "%bar%",0,1)

(je sorteert dus eigenlijk op de bedrijfsnaam met de laagste score = meeste matches)
 
Furio Scripting

Furio Scripting

18/10/2017 17:38:49
Quote Anchor link
Top bedankt voor de reacties, nog 1 vraagje:

Hoe hak ik mijn string netjes in stukken en kan ik deze eenvoudig in sql vergelijken.

Stel ik heb een lange string van: woord1-woord2-woord3-woord4 etc...

Ik kan natuurlijk niet in mijn mysql query 10x OR like zetten?

str_replace("-"," ",$string) geeft mij alle woorden los van elkaar maar hoe dan verder?
 
Rob Doemaarwat

Rob Doemaarwat

18/10/2017 18:05:56
Quote Anchor link
Je kunt daar prima 10x OR like zetten. Nog wel meer ook. Je moet het alleen op basis van je (aantal) woorden doen. Dus als je 5 woorden hebt, plak voeg je 5x een like aan je WHERE toe, en 5x een if() aan je ORDER BY. Vervolgens plak je de hele boel samen ala bovenstaande SQL en uitvoeren maar.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
$where = $order = [];
foreach(preg_split('/\\W+/',$string) as $word){
  $where[] = ...
  $order[] = ...
}
$sql = '
  select * from ...
  where ' . implode(' or ',$where) . '
  order by ' . implode('+',$order);


Toevoeging op 18/10/2017 18:12:19:

Ter info: die preg_split('/\\W+/',$string) splitst de $string op karakters die *niet* "in een woord" zitten (let op: hoofdletter W). Met karakters die "in een woord" zitten bedoelt een regex a-z, A-Z, 0-9, en "_" (http://www.regular-expressions.info/shorthand.html). De $string zal dus in een array gebroken worden op alle tekens (1 of meer) die daar niet in zitten. Met $string = "bla-bla bla----bla * * bla" levert dit dus een array op met 5x "bla".
Gewijzigd op 18/10/2017 18:15:10 door Rob Doemaarwat
 
Furio Scripting

Furio Scripting

19/10/2017 13:01:38
Quote Anchor link
Beste Rob,

Bedankt voor de code, ik heb hem even getest maar denk dat ik wat fout doe:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
</php
 $where = $order = [];
foreach(preg_split('/\\W+/',$input) as $word)
{
  $where[] = $word;
  $order[] = $input;
}

$q = '
  select * from bedrijven
  where ' . implode(' or ',$where) . '
  order by ' . implode('+',$order);
    
     echo $q;
?>



Resultaat: select * from bedrijven where emtek or ergonomics or bureaustoel or op or maat order by emtek-ergonomics---bureaustoel-op-maat+emtek-ergonomics---bureaustoel-op-maat+emtek-ergonomics---bureaustoel-op-maat+emtek-ergonomics---bureaustoel-op-maat+emtek-ergonomics---bureaustoel-op-maatUnknown column 'emtek' in 'where clause'
 
Thomas van den Heuvel

Thomas van den Heuvel

19/10/2017 15:45:38
Quote Anchor link
Is het bovenstaande niet precies wat fulltext searches doen, maar dan geïndexeerd? :p
 
Furio Scripting

Furio Scripting

19/10/2017 18:39:01
Quote Anchor link
Hi Thomas,

Moet je als je full text search wilt gebruiken elke keer de tabel updaten of kan je eenmalig zeggen: ALTER TABLE bedrijven
ADD FULLTEXT(bedrijfsnaam)
 
Rob Doemaarwat

Rob Doemaarwat

19/10/2017 21:49:52
Quote Anchor link
Nadeel van fulltext is dat je alleen op hele woorden zoekt, of in ieder geval vanaf het begin ("bar*" vindt niet "foobar"). Met een LIKE zoek je gewoon in het hele woord (begin/midden/eind: "%bar%" vindt "foobar" wel). Evt. kun je daar met je ORDER BY "score" rekening mee houden door
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
if(
  bedrijfsnaam LIKE "% foo %" OR
  bedrijfsnaam LIKE "foo %" OR
  bedrijfsnaam LIKE "% foo",
  10,
  if(bedrijfsnaam LIKE "%foo%",1,0)
)
te doen (= 10 punten bij een full-word match, 1 punt voor een "in woord" match).
Gewijzigd op 19/10/2017 21:50:23 door Rob Doemaarwat
 



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.