Reply to Re: Help with Statement

Your name:

Reply:


Posted by Brian on 04/19/07 11:27

>>> Hi all
>>>
>>> I know this can be done, just not sure how
>>>
>>> I have 2 tables of orders, table A ("summary") has 1 line of info per
>>> order
>>> (a summary the orders)
>>> table B ("full_orders") has the full details of orders, this is a one to
>>> many relationship
>>>
>>> I have been asked to take the "invoice_number", and "invoice_date" from
>>> the
>>> "summary" table and add it
>>> to the matching fields in the "full_orders" matching it by a field
>>> called
>>> "dnote", I just can't think of how to do it.
>>>
>>> I know there is a join in here somewhere but I just can't get mat head
>>> wrapped round it, I could rite a script to loop
>>> though this but there has to be a better way.
>>>
>>> What I am trying to say is this
>>>
>>> Start at being of summary table and loop though each row
>>> Get "invoice_number", "invoice_date" and "dnote", from "summary"
>>> table
>>> UPDATE "full_orders" SET invoice_number = summary.invoice_number,
>>> invoice_date = summary.invoice_date WHERE dnote = summary.dnote
>>> end loop
>>>
>>> Can anybody help
>>>
>>> Brian
>>
>
> ZeldorBlat" <zeldorblat@gmail.com> wrote
>
>> update full_orders
>> set invoice_number = s.invoice_number,
>> invoice_date = s.invoice_date
>> from full_orders f
>> join summary s on f.dnote = s.dnote
>>
>> I'm curious why you want to store the invoice_number and the
>> invoice_date in both places. Normalization tells us that it should
>> only be in one (probably the "summary" table).
>
> In short this has to be done to test the tables to find some errors,
> I'm 99.9% sure the errors are their end and not mine.
>
> Thanks for replaying
>
> Brian
>


Hi Zeldor

I have just tried the statement and I'm getting an 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
'FROM full_orders c
JOIN summary s ON c.dnote = s.dnote' at line 5

I have to say I'm a little confused how this statement works as there
is not WHERE command in there, any ideas? (MySQL client version: 4.1.20)

UPDATE full_orders
SET invoicedate = s.invoicedate,
invoicedatetimestamp = s.invoicedatetimestamp,
invoicenumber = s.invoicenumber
FROM full_orders f
JOIN summary s ON f.dnote = s.dnote


Regards

Brian

[Back to original 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

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