vb.org Archive

vb.org Archive (https://vborg.vbsupport.ru/index.php)
-   vB4 Programming Discussions (https://vborg.vbsupport.ru/forumdisplay.php?f=252)
-   -   SQL query questions (https://vborg.vbsupport.ru/showthread.php?t=294753)

John Lester 02-04-2013 03:09 PM

SQL query questions
 
The goal ... find how many users used "man" in their biography field in their profile. Then to change their usergroupid (I can do that much once I understand why the following SELECT query is wrong).

I've been messing around with this query ... but I'm still not familiar enough with JOIN statements to understand why it keeps throwing a syntax error.

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'LEFT JOIN user AS user ON (userfield.userid = user.userid) AND usergroupid = 2 A' at line 2

Query
Code:

SELECT * FROM userfield WHERE field1 = 'man'
LEFT JOIN user AS user ON (userfield.userid = user.userid)
AND usergroupid = 2
AND posts = 0

There is no "user" or "usergroupid" column in the userfield table ... only userid hence my reasoning to join the user table.

I'm using phpmyadmin and have the delimiter ; in the delimiter box hence it not being in the query above.

squidsk 02-04-2013 03:15 PM

Quote:

Originally Posted by John Lester (Post 2401812)
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'LEFT JOIN user AS user ON (userfield.userid = user.userid) AND usergroupid = 2 A' at line 2

Query
Code:

SELECT * FROM userfield WHERE field1 = 'man'
LEFT JOIN user AS user ON (userfield.userid = user.userid)
AND usergroupid = 2
AND posts = 0

There is no "user" or "usergroupid" column in the userfield table ... only userid hence my reasoning to join the user table.

You've got the query in the wrong order, the where clause has to come after all the tables are joined.

Code:

SELECT * FROM userfield
LEFT JOIN user AS user ON (userfield.userid = user.userid)
WHERE field1 = 'man'
AND usergroupid = 2
AND posts = 0


John Lester 02-04-2013 03:37 PM

Thank you Squid :)

It makes sense now that I see it done properly :)


All times are GMT. The time now is 11:40 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.01378 seconds
  • Memory Usage 1,718KB
  • Queries Executed 10 (?)
More Information
Template Usage:
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (3)bbcode_code_printable
  • (1)bbcode_quote_printable
  • (1)footer
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (6)option
  • (1)post_thanks_navbar_search
  • (1)printthread
  • (3)printthreadbit
  • (1)spacer_close
  • (1)spacer_open 

Phrase Groups Available:
  • global
  • postbit
  • showthread
Included Files:
  • ./printthread.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/class_bbcode_alt.php
  • ./includes/class_bbcode.php
  • ./includes/functions_bigthree.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • printthread_start
  • bbcode_fetch_tags
  • bbcode_create
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • printthread_post
  • printthread_complete