You are here: Re: Having trouble with left join « PHP Programming Language « IT news, forums, messages
Re: Having trouble with left join

Posted by chadlupkes on 03/29/07 13:24

On Mar 28, 5:38 am, Jerry Stuckle <jstuck...@attglobal.net> wrote:
> chadlupkes wrote:
> > On Mar 27, 8:24 am, Toby A Inkster <usenet200...@tobyinkster.co.uk>
> > wrote:
> >> chadlupkes wrote:
> >>> I'm getting NULLs where there shouldn't be.
> >> To determine that, we'd need to see some of the data.
>
> >>> king_precinct
> >> You've not given us a schema for this table.
>
> >> --
> >> Toby A Inkster BSc (Hons) ARCS
> >> Contact Me ~http://tobyinkster.co.uk/contact
> >> Geek of ~ HTML/SQL/Perl/PHP/Python*/Apache/Linux
>
> >> * = I'm getting there!
>
Here are the tables:

king_precinct

Field Type Null Key Default Extra
id smallint(6) PRI NULL auto_increment
precinct_number int(11) 0
precinct_name varchar(20) MUL
countydist smallint(6) 0
congdist smallint(6) 0
legdist smallint(6) 0

"precinct_name" is the name of the precinct, not the PCO. That's in
the next table.

pcolist
Field Type Null Key Default Extra
id smallint(6) PRI NULL auto_increment
precinct int(11) 0
pctname varchar(15)
area varchar(4)
legdist smallint(6) 0
countydist smallint(6) 0
congdist smallint(6) 0
name varchar(50)
email varchar(50) MUL
private tinyint(1) 0
type varchar(5)
> >
> > And since this is a PHP forum, which Jerry reminded me of, here is the
> > code I'm trying to get to work:
> >
> > echo('<html>
> > <head>
> > <title>Precincts in King County</title>
> > </head>
> > <body>
> > <table border="1">
> > <tr>
> > <th>Precinct Number</th>
> > <th>Precinct Name</th>
> > <th>County Council District</th>
> > <th>Congressional District</th>
> > <th>Legislative District</th>
> > <th>PCO Name</th>
> > <th>PCO Type</th>
> > </tr>
> > ');
> > $link_id = db_connect('wa46dems_data');
> > $result = mysql_query("SELECT king_precinct.precinct_number AS precinct_number, king_precinct.precinct_name AS precinct_name, king_precinct.legdist AS legdist, king_precinct.countydist AS countydist, king_precinct.congdist AS congdist, pcolist.name AS name, pcolist.type AS type
> > FROM king_precinct LEFT JOIN pcolist
> > ON king_precinct.precinct_number = pcolist.precinct
> > ORDER BY precinct_name", $link_id);
> > while($pct_data = mysql_fetch_array($result)) {
> > $precinct_number = $pct_data["precinct_number"];
> > $precinct_name = $pct_data["precinct_name"];
> > $precinct_cc = $pct_data["countydist"];
> > $precinct_cd = $pct_data["congdist"];
> > $precinct_ld = $pct_data["legdist"];
> > $precinct_pco_name = $query_data["name"];
> > $precinct_pco_email = $query_data["email"];
> > $precinct_pco_private = $query_data["private"];
> > $precinct_pco_type = $query_data["type"];
> > echo('
> > <tr>
> > <td>'.$precinct_number.'</td>
> > <td><a href="precinctmap.php?pct='.$precinct_number.'">'.
> > $precinct_name.'</a></td>
> > <td>'.$precinct_cc.'</td>
> > <td>'.$precinct_cd.'</td>
> > <td>'.$precinct_ld.'</td>
> > <td>'.$precinct_pco_name.'</td>
> > <td>'.$precinct_pco_type.'</td>
> > </tr>');
> > }
> > echo('</table>');
> >
>
> (Top posting fixed)
>
> PHP isn't going to affect whether your SQL code returns null values or
> not. If a particular row contains a null, you'll get a null back from
> your sql. And since you're doing a left join, if there is no matching
> row in pcolist you will get nulls for all values there.
>
> And you're still asking about the SQL, not PHP. You need to be asking
> in a SQL newsgroup - you'll get much better help on your SQL question.
>
> And please don't top post.
>
> --
> ==================
> Remove the "x" from my email address
> Jerry Stuckle
> JDS Computer Training Corp.
> jstuck...@attglobal.net
> ==================

I think it's something to do with my PHP code, because when I run the
SQL query within mysql, it works exactly how I want it to. I think
I'm doing something wrong in the code, but I just can't see it.

You can see the results that are coming out of the query here:

http://46dems.com/kcdems/precinctinfo_html.php

I'll copy the mysql group to see if anyone there has ideas that might
work.

 

Navigation:

[Reply to this message]


Удаленная работа для программистов  •  Как заработать на Google AdSense  •  England, UK  •  статьи на английском  •  PHP MySQL CMS Apache Oscommerce  •  Online Business Knowledge Base  •  DVD MP3 AVI MP4 players codecs conversion help
Home  •  Search  •  Site Map  •  Set as Homepage  •  Add to Favourites

Copyright © 2005-2006 Powered by Custom PHP Programming

Сайт изготовлен в Студии Валентина Петручека
изготовление и поддержка веб-сайтов, разработка программного обеспечения, поисковая оптимизация