vb.org Archive

vb.org Archive (https://vborg.vbsupport.ru/index.php)
-   vB3 Programming Discussions (https://vborg.vbsupport.ru/forumdisplay.php?f=15)
-   -   What's wrong with this SQL? (https://vborg.vbsupport.ru/showthread.php?t=216205)

Warlord 06-15-2009 04:32 PM

What's wrong with this SQL?
 
Can someone please tell me what's wrong with this sql? It gives me a SQL error. Does the WHERE publisher part have to come before the ORDER BY title part?

HTML Code:

SELECT *
               
                FROM ah_comics AS ah_comics
                LEFT JOIN user AS user ON (ah_comics.userid=user.userid) ORDER BY title
                WHERE publisher = 'DC Comics' LIMIT 0, 25;


ForumsMods 06-15-2009 04:39 PM

Which is the error you get?
you have to put if title and publisher are from ah_comics or user. I think they are from ah_comics.
Try:
[SQL]SELECT * FROM ah_comics AS ah_comics
LEFT JOIN user AS user ON (ah_comics.userid = user.userid)
WHERE ah_comics.publisher = 'DC Comics' ORDER BY ah_comics.title LIMIT 0, 25;[/SQL]

Warlord 06-15-2009 04:47 PM

Whoa, now I'm really confused.... but yes the titles are in the ah_comics table.

This is what the code looks like...

Code:

                $getcomics = $db->query_read("SELECT *
               
                FROM " . TABLE_PREFIX . "ah_comics AS ah_comics
                LEFT JOIN " . TABLE_PREFIX . "user AS user ON (ah_comics.userid=user.userid)
                $userquery LIMIT " . ($limitlower - 1) . ", $perpage");
                while($comics = $db->fetch_array($getcomics))

I just want it to order by title, but when I add ORDER BY title, it works just fine if I'm viewing all of the titles, but if I select a publisher, then I get the following SQL error.

MySQL Error : 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 'WHERE publisher = 'DC Comics' LIMIT 0, 25' at line 5
Error Number : 1064

--------------- Added [DATE]1245088186[/DATE] at [TIME]1245088186[/TIME] ---------------

I should be a little more clear I think...

This works when I view all titles

Code:

                $getcomics = $db->query_read("SELECT *
               
                FROM " . TABLE_PREFIX . "ah_comics AS ah_comics
                LEFT JOIN " . TABLE_PREFIX . "user AS user ON (ah_comics.userid=user.userid) ORDER BY title
                $userquery LIMIT " . ($limitlower - 1) . ", $perpage");
                while($comics = $db->fetch_array($getcomics))

But when I narrow down the listings by going to an individual publisher, I get that SQL error.

If I remove the ORDER BY title from the code, then I no longer get the sql error, but then they're not in order.

ForumsMods 06-15-2009 04:54 PM

ORBER BY has to be before LIMIT and after WHERE.

Warlord 06-15-2009 05:02 PM

Thanks for the help, but unfortunately this seems to be beyond my skill set. All these variables in this code are making what you're trying to tell me very hard for me to understand. :(

Would you mind looking at the file for me?

ForumsMods 06-15-2009 05:15 PM

PHP Code:

$getcomics $db->query_read("SELECT *
        FROM " 
TABLE_PREFIX "ah_comics AS ah_comics
        LEFT JOIN " 
TABLE_PREFIX "user AS user ON (ah_comics.userid = user.userid) 
        
$userquery ORDER BY ah_comics.title LIMIT " . ($limitlower 1) . ", $perpage");
        while(
$comics $db->fetch_array($getcomics)) 


Warlord 06-15-2009 05:17 PM

DUDE.... you are the FREAKIN MAN! Thanks a million! :)


All times are GMT. The time now is 01:21 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.01050 seconds
  • Memory Usage 1,729KB
  • 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
  • (2)bbcode_code_printable
  • (1)bbcode_html_printable
  • (1)bbcode_php_printable
  • (1)footer
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (6)option
  • (1)post_thanks_navbar_search
  • (1)printthread
  • (7)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