Go Back   vb.org Archive > vBulletin 3 Discussion > vB3 Programming Discussions
FAQ Community Calendar Today's Posts Search

Reply
 
Thread Tools Display Modes
  #1  
Old 12-29-2006, 04:47 PM
brownafroduck brownafroduck is offline
 
Join Date: Oct 2003
Posts: 54
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default Sum of values based on usergroupid, using two tables

I'm a webmaster relatively inexperienced with databases and mySQL, so I am looking for any sort of pointer in the right direction like this. I've attempted to write a few SUM statements (is that even what you call them? statements?) using resources around the web, but I just can't seem to get this right.

I have two tables user and userfield.

In the user table I have the userid and usergroupid values.
In the userfield table I have the userid and userfield16 (an integer value representing points) values.

I would like to total the userfield16 points based on the usergroupid and have this value displayed on the forumhome index.php.

Make sense?
Reply With Quote
  #2  
Old 12-29-2006, 06:09 PM
Paul M's Avatar
Paul M Paul M is offline
 
Join Date: Sep 2004
Location: Nottingham, UK
Posts: 23,748
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

This should do you for the sql;

[sql]
SELECT usergroupid, SUM(userfield16) AS total FROM user
LEFT JOIN userfield USING (userid)
GROUP BY usergroupid
[/sql]
Reply With Quote
  #3  
Old 12-29-2006, 07:44 PM
brownafroduck brownafroduck is offline
 
Join Date: Oct 2003
Posts: 54
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Thanks for the quick reply!

I feel like I'm doing this completely incorrectly. This query gives me an array? Or what? I'm a complete noob at this, so here is my feeble attempt. I used the SQL that you gave me...

PHP Code:
$resultmysql_query("
                SELECT usergroupid, SUM(userfield16) AS total FROM " 
TABLE_PREFIX "user
                LEFT JOIN " 
TABLE_PREFIX "userfield USING (userid)
                GROUP BY usergroupid
                "
) or die(mysql_error());
                
$points mysql_fetch_array($result);

$group1$points[0];
$group2$points[1];
$group3$points[2];
$group4$points[3]; 
But I get this error...
Code:
Unknown column 'userfield16' in 'field list'
What am I doing wrong? What do I need to change? If I know that the usergroupid values that I need to sum up the points are 11, 12, 13, and 14, does that make it any easier? Is there perhaps some other approach that I can take to this with that knowledge?

Thanks!
Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 04:09 PM.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.03289 seconds
  • Memory Usage 2,181KB
  • Queries Executed 13 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)ad_showthread_beforeqr
  • (1)ad_showthread_firstpost
  • (1)ad_showthread_firstpost_sig
  • (1)ad_showthread_firstpost_start
  • (1)bbcode_code
  • (1)bbcode_php
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)navbar
  • (3)navbar_link
  • (120)option
  • (3)post_thanks_box
  • (3)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (3)post_thanks_postbit_info
  • (3)postbit
  • (3)postbit_onlinestatus
  • (3)postbit_wrapper
  • (1)spacer_close
  • (1)spacer_open
  • (1)tagbit_wrapper 

Phrase Groups Available:
  • global
  • inlinemod
  • postbit
  • posting
  • reputationlevel
  • showthread
Included Files:
  • ./showthread.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/modsystem_functions.php
  • ./includes/functions_bigthree.php
  • ./includes/class_postbit.php
  • ./includes/class_bbcode.php
  • ./includes/functions_reputation.php
  • ./includes/functions_post_thanks.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_postinfo_query
  • fetch_postinfo
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • showthread_start
  • showthread_getinfo
  • forumjump
  • showthread_post_start
  • showthread_query_postids
  • showthread_query
  • bbcode_fetch_tags
  • bbcode_create
  • showthread_postbit_create
  • postbit_factory
  • postbit_display_start
  • post_thanks_function_post_thanks_off_start
  • post_thanks_function_post_thanks_off_end
  • post_thanks_function_fetch_thanks_start
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • fetch_musername
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_display_complete
  • post_thanks_function_can_thank_this_post_start
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete