SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

Einführung in XHTML, CSS und Webdesign

Einführung in XHTML, CSS und Webdesign zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > MySQLi/PDO/(MySQL)
Hilfe Community Kalender Heutige Beiträge Suchen

MySQLi/PDO/(MySQL) Anfänger, Fortgeschrittene oder Experten können hier Fragen und Probleme rund um MySQLi/PDO/(MySQL) diskutieren

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 20.07.2011, 08:35:45
bonanza10 bonanza10 ist offline
Anfänger
 
Registriert seit: Jan 2011
Alter: 43
Beiträge: 16
Hilfe mit count bzw. sum

Ich hab eine Tabelle in der Kommentare gespeichert werden, zusätzliche eine Tabelle in der ich speichere ob jemand diesen Kommentar hilfreich findet (so wie bei Amazon)
Die Kommentrae rufe ich so ab:
Code:
SELECT pc.`id_product_comment` , IF( c.id_customer, CONCAT( c.`firstname` , ' ', LEFT( c.`lastname` , 1 ) ) , pc.customer_name ) customer_name, pc.`content` , pc.`grade` , pc.`date_add` , pc.title
FROM `ps_product_comment` pc
LEFT JOIN `ps_customer` c ON c.`id_customer` = pc.`id_customer`
WHERE pc.`id_product` =11
ORDER BY pc.`date_add` DESC
LIMIT 0 , 30
Das klappt so weit ganz gut, ich bekomme meine 3 Datensätze zurück. Nun will ich aber wissen wie viele User einen Kommentar hilfreich fanden, was so aussieht:
Code:
SELECT 
pc.`id_product_comment`, 
sum(if(hp.helpful=1,1,0)) AS helpful,
IF(c.id_customer, CONCAT(c.`firstname`, ' ', LEFT(c.`lastname`, 1)), pc.customer_name) customer_name, 
pc.`content`, 
pc.`grade`, 
pc.`date_add`, 
pc.title 
FROM `ps_product_comment` pc 
LEFT JOIN `ps_customer` c ON c.`id_customer` = pc.`id_customer` 
LEFT JOIN `wr_comment_helpful` hp ON ( pc.`id_product_comment` = hp.`id_product_comment`) 
WHERE pc.`id_product` = 11
ORDER BY pc.`date_add` DESC
Leider stimmt da irgendwas nicht, ich bekomme lediglich noch einen Datensatz zurück.
Pseudo SQL sollte so sein:
Code:
SELECT 
pc.`id_product_comment`, 
ALLE DATENSÄTZE DIE ZUM KOMMENTAR GEHÖREN UND HILFREICH SIND AS helpful,   <--------
ALLE DATENSÄTZE DIE ZUM KOMMENTAR GEHÖREN AS all,                         <---------
IF(c.id_customer, CONCAT(c.`firstname`, ' ', LEFT(c.`lastname`, 1)), pc.customer_name) customer_name, 
pc.`content`, 
pc.`grade`, 
pc.`date_add`, 
pc.title 
FROM `ps_product_comment` pc 
LEFT JOIN `ps_customer` c ON c.`id_customer` = pc.`id_customer` 
LEFT JOIN `wr_comment_helpful` hp ON ( pc.`id_product_comment` = hp.`id_product_comment`)      <-------------------------
WHERE pc.`id_product` = 11
ORDER BY pc.`date_add` DESC
Kann mir jemand einen Tipp geben, ich komm da einfach nicht weiter.
Danke schon mal!
Mit Zitat antworten
  #2  
Alt 20.07.2011, 08:57:54
Matthias Matthias ist offline
Moderator
 
Registriert seit: Jan 2002
Ort: CologneCity
Alter: 46
Beiträge: 484
AW: Hilfe mit count bzw. sum

Du musst noch definieren nach was gruppiert werden soll. Schau dir mal group by an.

Deine Query sollte so das richtige Ergebnis liefern:

Code:
SELECT 
pc.`id_product_comment`, 
sum(if(hp.helpful=1,1,0)) AS helpful,
IF(c.id_customer, CONCAT(c.`firstname`, ' ', LEFT(c.`lastname`, 1)), pc.customer_name) customer_name, 
pc.`content`, 
pc.`grade`, 
pc.`date_add`, 
pc.title 
FROM `ps_product_comment` pc 
LEFT JOIN `ps_customer` c ON c.`id_customer` = pc.`id_customer` 
LEFT JOIN `wr_comment_helpful` hp ON ( pc.`id_product_comment` = hp.`id_product_comment`) 
WHERE pc.`id_product` = 11
GROUP BY pc.`id_product_comment` 
ORDER BY pc.`date_add` DESC
Mit Zitat antworten
  #3  
Alt 20.07.2011, 09:12:04
bonanza10 bonanza10 ist offline
Anfänger
 
Registriert seit: Jan 2011
Alter: 43
Beiträge: 16
AW: Hilfe mit count bzw. sum

Danke dir, das wars :-)
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
COUNT mit JOINs und sub-queries kriechend langsam droehn MySQLi/PDO/(MySQL) 26 07.11.2010 13:25:36
Hilfe bei einer Abfrage memcpy MySQLi/PDO/(MySQL) 3 22.06.2010 14:00:39
Hilfe, Hilfe, Hilfe adoganay Support 1 08.02.2010 08:05:08
Hilfe! ERROR 1045 (28000): Access denied... törkesch MySQLi/PDO/(MySQL) 0 08.08.2008 19:11:37
Help!!! Hilfe!!! Presster PHP Grundlagen 1 16.12.2004 20:28:57


Alle Zeitangaben in WEZ +2. Es ist jetzt 13:36:39 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt