php - mysql left join not return all left table row -


i have 2 tables

phonetype: phonetypeid (pk) phonetyepe  phone: phoneid (pk) peopleid (fk) phonetypeid (fk) areacode number` 

for specific peopleid return phonetypes , if peopleid has number diplay it, if not empty. like:

phonetype    phonetypeid    areacode    number company      1              111         11111 fax          2 home         3              222         222222 mobile       4 

here prepared statement:

$stmt = $conn->prepare("select * phonetype left join phone on phonetype.phonetypeid=phone.phonetypeid phone.peopleid = ?;  "); if ( !$stmt ) {die(printf("error: %s.\n", mysqli_stmt_error($stmt) ) );} else if ( !$stmt->bind_param('i', $peopleid) ) {die(printf("error: %s.\n", mysqli_stmt_error($stmt) ) );} 

but way have

phonetype    phonetypeid    areacode    number company      1              111         11111 home         3              222         222222 

what doing wrong? ps first join!! thanks!!

edit (this question follows other question [display data database in specific order: php or mysql? . after reading answers of gravel, robbie averill, maximus2012 , miken32 understood better design have dedicate table phonetype, , use foreign key in phone table. thinking different scenario, asked new question. if thinks duplicate , there way join 2 question, it. again took time me.)

in query;

select * phonetype left join phone on phonetype.phonetypeid=phone.phonetypeid phone.peopleid = ? 

...the where clause condition on rightmost table remove rows rightmost table has no value, negating left join.

what want add condition left join's on clause instead, allowing empty values of phone still show up;

select * phonetype left join phone   on phonetype.phonetypeid=phone.phonetypeid  , phone.peopleid = ? 

Comments

Popular posts from this blog

sql - VB.NET Operand type clash: date is incompatible with int error -

SVG stroke-linecap doesn't work for circles in Firefox? -

python - TypeError: Scalar value for argument 'color' is not numeric in openCV -