D'accord, je suis coincé sur un problème.Assembler cinq tables
J'ai environ 5 tables de base de données. Une table contient une liste de campagnes, une autre une liste de groupes d'annonces, une autre une liste d'annonces, une autre une liste de clics, une autre une liste de prospects et une autre une liste de prospects. Chaque table comporte également d'autres colonnes. Par exemple, dans les clics, vous disposez d'un compte ad_id et d'un compte de colonne, et la table d'état des prospects comporte un identifiant principal, un acheteur et un montant. Chaque table contient une colonne avec un identifiant associé à un autre identifiant de table.
Je suis en train de récupérer mes données dans le format suivant
campaign keyword count(keyword) sum(amount) buyer
bing-auto rap 15 45 david
google-auto honda 10 30 chris
Fondamentalement, il est tout de plomb succès regroupés par mots clés et campagne.
Cependant, je n'arrive pas à résoudre ce problème.
SELECT keyword, COUNT(keyword) FROM in_clicks AS ic
INNER JOIN ads AS a ON ic.ad_id = a.id
INNER JOIN ad_groups AS ag ON a.ad_group_id = ag.id
INNER JOIN campaigns AS c ON ag.campaign_id = c.id;
INNER JOIN lead_status AS ls ON l.id = ls.id
INNER JOIN leads AS l ON ic.in_click_id = l.id
WHERE ic.create_date LIKE '%2011-08-19%' AND ic.location NOT LIKE '%Littleton%'
GROUP BY ic.keyword ORDER BY COUNT(ic.keyword) DESC
Je sais que ce n'est pas une bonne explication, et ma question ci-dessus n'est pas bon, mais je suis un peu coincé sur la façon de procéder. Quelqu'un peut-il m'aider à me diriger dans la bonne direction?
EDIT: Voici le schéma de la table.
CAMPAIGN
id name trafficsource createdate
20 hip hop bing 2001-08-16
21 rap bing 2001-08-18
AD GROUPS
id name campaignid createdate
15 jayz 20 2001-08-16
16 eminem 21 2001-08-18
ADS
id headline adgroupid
13 cool is cool 15
14 wow, great 16
IN CLICKS
id keyword adid createdate
205 his name 13 2001-08-16
206 whoa 14 2001-08-18
LEADS
id in_click_id create_date
300 205 2001-08-16
301 206 2001-08-18
LEAD STATUS
id lead_id success amount buyer
501 300 0 5 jack
502 300 1 15 jill
peuvent vous poster votre schéma de table? –
Un début similaire à% est généralement une mauvaise idée, car cela empêche le serveur d'utiliser un index. Si ic.create_date est un type de données, utilisez par exemple. entre pour définir un début/fin. –
Quelle est la question? La requête SQL semble valide au premier coup d'oeil, alors qu'est-ce qui ne va pas? Selon votre description, vous pouvez facilement ajouter les colonnes manquantes à votre SELECT. –