abonnement Unibet Coolblue Bitvavo
pi_150252018
quote:
0s.gif Op dinsdag 3 maart 2015 16:08 schreef DannyDeko het volgende:

[..]

Ik heb het maar gewoon gebruikt, want zoals je al zei zal er toch op een manier geteld moeten worden.
[ code verwijderd ]

Zo is ie valid.
Maar zou je me kunnen uitleggen waarom " GROUP BY P1.name " hier nodig is?
Je distinct is onnodig, je hebt GROUP BY al.

En GROUP BY is nodig door de HAVING.

Verder is je HAVING niet goed, want je wil het aantal keren dat personA_id voorkomt tellen. (Eigenlijk de naam, maar een naam is natuurlijk niet uniek.)

1
2
3
4
5
6
7
8
9
SELECT P1.Name, COUNT(L.personA_id) AS NrOfLikes
FROM Likes L
INNER JOIN Persons P1
    ON L.personA_id = P1.id
INNER JOIN Persons P2
    ON L.personB_id = P2.id
WHERE P2.eyeColor = 'green'
GROUP BY P1.Name
HAVING COUNT(L.personA_id) > 1

Alhoewel, ik test het op TSQL; dat wijkt ietwat af van MySQL. Draait jouw code met de HAVING die jij hebt?!

[ Bericht 1% gewijzigd door #ANONIEM op 03-03-2015 16:16:55 ]
pi_150252339
quote:
0s.gif Op dinsdag 3 maart 2015 16:10 schreef zarGon het volgende:

[..]

Je distinct is onnodig, je hebt GROUP BY al.

En GROUP BY is nodig door de HAVING.

Verder is je HAVING niet goed, want je wil het aantal keren dat personA_id voorkomt tellen. (Eigenlijk de naam, maar een naam is natuurlijk niet uniek.)
[ code verwijderd ]

Alhoewel, ik test het op TSQL; dat wijkt ietwat af van MySQL. Draait jouw code met de HAVING die jij hebt?!
Aha, duidelijk. Thanks voor de toelichting!

Ik zie (en snap) nu idd ook dat de having verkeerd is.
En ja het draaide ook al met de code die ik poste, dus ook inclusief de overbodige distinct.
pi_150252739
quote:
0s.gif Op dinsdag 3 maart 2015 16:18 schreef DannyDeko het volgende:

[..]

Aha, duidelijk. Thanks voor de toelichting!

Ik zie (en snap) nu idd ook dat de having verkeerd is.
En ja het draaide ook al met de code die ik poste, dus ook inclusief de overbodige distinct.
Wat meer info over de HAVING: http://en.wikipedia.org/wiki/Having_%28SQL%29.

Ik vind die impliciete joins van jou maar niets. :P.
  vrijdag 6 maart 2015 @ 17:26:44 #94
272287 henrivo
Tikt tegen jassies
pi_150359019
Goeie vrijdagmiddag! :)

Ik ben inmiddels een paar dagen geleden vastgelopen tegen iets waar ik écht even geen raad mee weet. Nu ook weer, 4 uur achter elkaar zitten uitproberen, testen, niks lijkt te werken. Ik faal :')

De situatie is als volgt: ik heb tabel Article met o.a. de column articleTags:
1
2
3
4
5
6
7
<?php
/**
     * @ORM\ManyToMany(targetEntity="ArticleTag", inversedBy="articles")
     * @ORM\JoinTable(name="article_tags")
     **/
    
private $articleTags;
?>

En tabel ArticleTag
1
2
3
4
5
6
<?php
/**
     * @ORM\ManyToMany(targetEntity="Article", mappedBy="articleTags")
     **/
    
private $articles;
?>

Nu wil ik een cloudwolkje maken van laten we zeggen 5-10 keywords, dus roep ik het volgende op in de controller:

1
2
3
4
5
6
7
<?php
$qb 
$em->createQueryBuilder();
        
$qb->select('articletag, (SELECT count(article.id) FROM HVNewsBundle:Article AS article WHERE article.articleTags = articletag.id) AS mycount')
            ->
from('HVNewsBundle:ArticleTag''articletag')
            ->
orderBy('mycount''DESC');
        
$articleTags $qb->getQuery()->getResult();
?>

Waarna ik $articleTags in een for-loop wil laten doorlopen in de view

Kunnen jullie mij vertellen wat ik fout doe? Wat ik ook probeer ik blijf steeds foutmeldingen krijgen n.a.v. $qb

Edit: ik wil dus dat wanneer deze view wordt opgevraagd, het aantal artikelen opnieuw wordt berekend :)
pi_150359986
"foutmeldingen" ja daar heb ik ook wel eens last van :P

denk dat je de count moet doen op je koppeltabel.

article.articletags is een arraycollection van tags, dus daar kun je niet zomaar een WHERE op doen.
  vrijdag 6 maart 2015 @ 18:27:58 #96
272287 henrivo
Tikt tegen jassies
pi_150360580
quote:
14s.gif Op vrijdag 6 maart 2015 18:03 schreef KomtTijd... het volgende:
"foutmeldingen" ja daar heb ik ook wel eens last van :P

denk dat je de count moet doen op je koppeltabel.

article.articletags is een arraycollection van tags, dus daar kun je niet zomaar een WHERE op doen.
Dus eigenlijk gewoon een kolommetje erbij met 'views' en die dan per actie ++ of -1 laten berekenen?

Sucks. -O-

Anders begrijp ik je even verkeerd :@
pi_150360753
Nee je kunt toch in je koppel tabel tellen hoeveel artikelen een bepaalde tag heeft of vice versa? Weet FF niet of je makkelijk kunt querien naar de koppeltabel met doctrine maar dat lijkt me wel de manier.
  vrijdag 6 maart 2015 @ 18:41:39 #98
272287 henrivo
Tikt tegen jassies
pi_150360912
quote:
14s.gif Op vrijdag 6 maart 2015 18:35 schreef KomtTijd... het volgende:
Nee je kunt toch in je koppel tabel tellen hoeveel artikelen een bepaalde tag heeft of vice versa? Weet FF niet of je makkelijk kunt querien naar de koppeltabel met doctrine maar dat lijkt me wel de manier.
Ja dat was ook eigenlijk mijn vraag, hoe ik dat het beste doe, aangezien ik nu talloze combinaties geprobeerd heb en SQL/DQL niet mijn sterkste kant is :@
  vrijdag 6 maart 2015 @ 19:39:00 #99
272287 henrivo
Tikt tegen jassies
pi_150362996
Kortgezegde wil ik dus van elk bestaande tag berekenen hoeveel articles er aan gekoppeld zitten. Heeft iemand enig idee hoe?
pi_150363104
quote:
0s.gif Op vrijdag 6 maart 2015 19:39 schreef henrivo het volgende:
Kortgezegde wil ik dus van elk bestaande tag berekenen hoeveel articles er aan gekoppeld zitten. Heeft iemand enig idee hoe?
SELECT COUNT(tag_id) FROM articles_tags GROUP BY article_id :?
  vrijdag 6 maart 2015 @ 20:04:06 #101
363995 Reemi
Zeg maar Remi.
pi_150364235
quote:
19s.gif Op vrijdag 6 maart 2015 19:41 schreef TwenteFC het volgende:

[..]

SELECT COUNT(tag_id) FROM articles_tags GROUP BY article_id :?
Is:

SELECT COUNT(article_id) FROM articles_tags GROUP BY tag_id

Niet logischer? :P Nu tel je voor elk bericht het aantal tags.
Smile like you mean it
www.wefut.com
  vrijdag 6 maart 2015 @ 20:10:25 #102
272287 henrivo
Tikt tegen jassies
pi_150364540
Snappen jullie nu waarom ik de draad kwijt ben? :')
pi_150365067
quote:
0s.gif Op vrijdag 6 maart 2015 20:04 schreef Reemi het volgende:

[..]

Is:

SELECT COUNT(article_id) FROM articles_tags GROUP BY tag_id

Niet logischer? :P Nu tel je voor elk bericht het aantal tags.
:P Lange dag. Maar je hebt inderdaad gelijk ja, iets te snel overheen gelezen ;)
  vrijdag 6 maart 2015 @ 20:28:53 #104
272287 henrivo
Tikt tegen jassies
pi_150365509
quote:
19s.gif Op vrijdag 6 maart 2015 20:21 schreef TwenteFC het volgende:

[..]

:P Lange dag.
Ik ook, maar wanneer ik dit doe:
1
2
3
4
5
<?php
$query 
$em->createQuery('SELECT COUNT(article_id) FROM articles_tags GROUP BY tag_id');

        
$articleTags $query->getResult();
?>
Levert mij dit op:
1[Semantical Error] line 0, col 30 near 'articles_tags': Error: Class 'articles_tags' is not defined.
pi_150370256
quote:
0s.gif Op vrijdag 6 maart 2015 20:28 schreef henrivo het volgende:

[..]

Ik ook, maar wanneer ik dit doe:
[ code verwijderd ]

Levert mij dit op:
[ code verwijderd ]

:P Probeer het eerst in PhpMyAdmin/HeidiSQL/SQLyog oid om de juiste data te krijgen.
  vrijdag 6 maart 2015 @ 22:18:27 #106
272287 henrivo
Tikt tegen jassies
pi_150370439
quote:
19s.gif Op vrijdag 6 maart 2015 22:13 schreef TwenteFC het volgende:

[..]

:P Probeer het eerst in PhpMyAdmin/HeidiSQL/SQLyog oid om de juiste data te krijgen.
Thanks, ga ik even mee aan de slag :)

Edit:
Dat gaat trouwens niet zomaar, DQL != SQL. Ben al dagen bezig met queries, maar krijg nog steeds niet het gewenste resultaat (lees: een array terugkrijgen van tags met daaraan gekoppeld in hoeveel artikelen ze voorkomen)

[ Bericht 14% gewijzigd door henrivo op 06-03-2015 22:31:33 ]
  Moderator dinsdag 10 maart 2015 @ 12:50:36 #107
55052 crew  djkoelkast
www.xms.nl
pi_150492663
Ik heb hier een exportscript wat ik wil aanpassen, normaal gaat me dat goed af, maar hier loop ik echt even vast.

Voorbeeldje:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?php
            
// CSV import format
            
$headers = array(
                
'order_id'               => 'Ordernummer',
                
'shipping_first_name'    => 'shipping_first_name',
                
'shipping_last_name'     => 'shipping_last_name',
                
'shipping_address_1'     => 'shipping_address_1',
                
'shipping_address_2'     => 'shipping_address_2',
                
'shipping_postcode'      => 'shipping_postcode',
                
'shipping_city'          => 'shipping_city',
                
'shipping_country'       => 'shipping_country',
                
'shipping_company'       => 'shipping_company',
                
'billing_phone'          => 'billing_phone',
                
'customer_note'          => 'customer_note',
            );
?>

Ik wil alleen first name en last name in 1 veld hebben.
Maar nog wel meer van die dingetjes waar ik niet uit kom, iemand die me hier in kan assisteren?
Luister naar XPLIZIT op www.xms.nl
Voor alles retro bezoek je het Retroforum - www.retroforum.nl
  Moderator woensdag 11 maart 2015 @ 23:21:01 #109
55052 crew  djkoelkast
www.xms.nl
pi_150551058
Daarmee kom ik er nog niet uit helaas. Ik zal wat hands-on uitleg moeten hebben.
Ik kan er wel een punt voor gooien, maar 't zit wel in een array hè?
Luister naar XPLIZIT op www.xms.nl
Voor alles retro bezoek je het Retroforum - www.retroforum.nl
pi_150551197
Wellicht kun je wat meer informatie in dit topic posten. Ik zie enkel een array structuur. Wat je doet, wat je wilt bereiken en waar het probleem ligt zie ik daar niet in.
Volkorenbrood: "Geen quotes meer in jullie sigs gaarne."
pi_150554360
quote:
0s.gif Op woensdag 11 maart 2015 23:21 schreef djkoelkast het volgende:
Daarmee kom ik er nog niet uit helaas. Ik zal wat hands-on uitleg moeten hebben.
Ik kan er wel een punt voor gooien, maar 't zit wel in een array hè?
Wat voor foutmelding kreeg je dan toen je het probeerde? Of wat is het probleem?

We kunnen niet ruiken wat je verkeerd doet als je alleen maar meldt dat het niet lukt hè.
  Moderator donderdag 12 maart 2015 @ 09:49:57 #112
55052 crew  djkoelkast
www.xms.nl
pi_150557503
Ik wil een csv-export en die werkt want het is een bestaand script.
Ik wil alleen velden op mijn volgorde en met de info die ik nodig heb exporteren en niet met wat die programmeur heeft bedacht, maar ik vind het erg lastig op deze manier omdat ik eigenlijk geen idee heb wat ik aan het doen ben.
Toen ik het probeerde ging mijn site op error 500 :+
Luister naar XPLIZIT op www.xms.nl
Voor alles retro bezoek je het Retroforum - www.retroforum.nl
pi_150557669
Het helpt al een heleboel als je de foutmelding leest en probeert te begrijpen. Dik kans dat er gewoon ergens een puntkomma verkeerd staat bijvoorbeeld, in de foutmelding staat waar (regel nummer)
  vrijdag 13 maart 2015 @ 09:22:47 #114
118585 Crutch
Filantroop || Taalzwengel
pi_150589972
quote:
0s.gif Op donderdag 12 maart 2015 09:49 schreef djkoelkast het volgende:
Ik wil een csv-export en die werkt want het is een bestaand script.
Ik wil alleen velden op mijn volgorde en met de info die ik nodig heb exporteren en niet met wat die programmeur heeft bedacht, maar ik vind het erg lastig op deze manier omdat ik eigenlijk geen idee heb wat ik aan het doen ben.
Toen ik het probeerde ging mijn site op error 500 :+
Post hier je code, daar hebben we veel meer aan.
Je moeder is een hamster
  Moderator vrijdag 13 maart 2015 @ 10:11:19 #115
55052 crew  djkoelkast
www.xms.nl
pi_150591285
quote:
14s.gif Op donderdag 12 maart 2015 09:55 schreef KomtTijd... het volgende:
Het helpt al een heleboel als je de foutmelding leest en probeert te begrijpen. Dik kans dat er gewoon ergens een puntkomma verkeerd staat bijvoorbeeld, in de foutmelding staat waar (regel nummer)
Er is geen foutmelding, gewoon wit scherm, meer niet.

quote:
0s.gif Op vrijdag 13 maart 2015 09:22 schreef Crutch het volgende:

[..]

Post hier je code, daar hebben we veel meer aan.
De hele code posten is wat onhandig, vandaar dat ik iemand vraag die me even wegwijs wil maken, die kan het script dan even bekijken en zeggen wat ik moet doen.
Luister naar XPLIZIT op www.xms.nl
Voor alles retro bezoek je het Retroforum - www.retroforum.nl
pi_150591316
quote:
0s.gif Op vrijdag 13 maart 2015 10:11 schreef djkoelkast het volgende:

[..]

Er is geen foutmelding, gewoon wit scherm, meer niet.

Dan eerst daar iets aan doen.

http://php.net/manual/en/function.error-reporting.php
  zaterdag 14 maart 2015 @ 08:48:30 #117
187069 slacker_nl
Sicko pur sang
pi_150625704
quote:
0s.gif Op vrijdag 13 maart 2015 10:11 schreef djkoelkast het volgende:

[..]

Er is geen foutmelding, gewoon wit scherm, meer niet.

[..]

De hele code posten is wat onhandig, vandaar dat ik iemand vraag die me even wegwijs wil maken, die kan het script dan even bekijken en zeggen wat ik moet doen.
Je moet dat ene doen waardoor het gaat werken.
In theory there is no difference between theory and practice. In practice there is.
pi_150628101
Dit is een beetje als vragen om hulp bij een auto die niet wil starten en dan een foto van het kinderzitje laten zien.
Volkorenbrood: "Geen quotes meer in jullie sigs gaarne."
  Moderator zaterdag 14 maart 2015 @ 11:57:35 #119
55052 crew  djkoelkast
www.xms.nl
pi_150628585
Ik vraag dan ook of iemand even wegenwacht wil spelen en niet of iemand de handleiding van mijn auto wil aangeven, want die heb ik al gelezen en ik kom er niet uit.
Luister naar XPLIZIT op www.xms.nl
Voor alles retro bezoek je het Retroforum - www.retroforum.nl
  zaterdag 14 maart 2015 @ 12:35:13 #120
62215 qu63
..de tijd drinkt..
pi_150629290
quote:
0s.gif Op zaterdag 14 maart 2015 11:57 schreef djkoelkast het volgende:
Ik vraag dan ook of iemand even wegenwacht wil spelen en niet of iemand de handleiding van mijn auto wil aangeven, want die heb ik al gelezen en ik kom er niet uit.
Nou, open de motorkap dan kunnen we kijken wat er in zit ;)
It's Time To Shine
[i]What would life be like without rhethorical questions?[/i]
abonnement Unibet Coolblue Bitvavo
Forum Opties
Forumhop:
Hop naar:
(afkorting, bv 'KLB')