From: Peter Brawley Date: April 25 2005 8:43pm Subject: Re: Query question List-Archive: http://lists.mysql.com/mysql/183106 Message-Id: <426D5671.9070206@earthlink.net> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=======AVGMAIL-426D56716881=======" --=======AVGMAIL-426D56716881======= Content-Type: multipart/alternative; boundary=------------050507060502040405010103 --------------050507060502040405010103 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit That's real syntax for inline assignment of a column value to a user variable. What MySQL version are you using? PB Jeff McKeon wrote: > Peter, > > I'm unfamiliar with the "@d := " section you describe. Is this psudo > code or real syntax? > > thanks, > > Jeff > > > > -----Original Message----- > *From:* Peter Brawley [mailto:peter.brawley@stripped] > *Sent:* Monday, April 25, 2005 4:17 PM > *To:* Jeff McKeon > *Cc:* mysql@stripped > *Subject:* Re: Query question > > Jeff, > > Then do it with 2 queries, > >SELECT @d := MAX( datestamp ) >FROM table2 >WHERE parentID = X; > > SELECT * > FROM table2 > WHERE parentID = X AND datestamp=@d; > > PB > > ----- > > Jeff McKeon wrote: > >>Thanks all but I don't have a mysql version high enough for subqueries. >> >>Thanks, >> >>Jeff >> >> >> >>>-----Original Message----- >>>From: Peter Brawley [mailto:peter.brawley@stripped] >>>Sent: Monday, April 25, 2005 4:01 PM >>>To: Jeff McKeon >>>Cc: mysql@stripped >>>Subject: Re: Query question >>> >>> >>>Jeff, >>> >>>Something like ... >>> >>>SELECT * >>>FROM table2 AS a >>>WHERE datestamp = ( >>> SELECT MAX( b.datestamp ) >>> FROM table2 AS b >>> WHERE a.parentID = b.parentID >>>); >>> >>>PB >>> >>>----- >>> >>> >>>Jeff McKeon wrote: >>> >>> >>> >>>>I have a table that contains records that link back to a >>>> >>>> >>>main talbe in >>> >>> >>>>a many to one configuration linked by table1.id = table2.parentid >>>> >>>>Table1 (one) >>>>Table2 (many) >>>> >>>>I want to pull the latest records from table2 for each >>>> >>>> >>>record in table1 >>> >>> >>>>where certain criteria applie. >>>> >>>>So, if record 100 in table1 links to 5 corresponding records >>>> >>>> >>>in table2, >>> >>> >>>>I want to pull the latest record from table2 where table2.parentid = >>>>100 and table2.user not like 'john' >>>> >>>>There is a datestamp field in table2. >>>> >>>>I just can't figure out how to do this. >>>> >>>>Thanks, >>>> >>>>Jeff >>>> >>>> >>>> >>>> >>>> >>>> >>>-- >>>No virus found in this outgoing message. >>>Checked by AVG Anti-Virus. >>>Version: 7.0.308 / Virus Database: 266.10.2 - Release Date: 4/21/2005 >>> >>> >>> >>> >> >> >> >> >------------------------------------------------------------------------ > >No virus found in this incoming message. >Checked by AVG Anti-Virus. >Version: 7.0.308 / Virus Database: 266.10.2 - Release Date: 4/21/2005 > > --------------050507060502040405010103 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit
That's real syntax for inline assignment of a column value to a user variable. What MySQL version are you using?--------------050507060502040405010103-- --=======AVGMAIL-426D56716881======= Content-Type: text/plain; x-avg=cert; charset=us-ascii Content-Transfer-Encoding: quoted-printable Content-Disposition: inline Content-Description: "AVG certification" No virus found in this outgoing message. Checked by AVG Anti-Virus. Version: 7.0.308 / Virus Database: 266.10.2 - Release Date: 4/21/2005 --=======AVGMAIL-426D56716881=======--Message Peter,I'm unfamiliar with the "@d := " section you describe. Is this psudo code or real syntax?thanks,Jeff-----Original Message-----Jeff,
From: Peter Brawley [mailto:peter.brawley@stripped]
Sent: Monday, April 25, 2005 4:17 PM
To: Jeff McKeon
Cc: mysql@stripped
Subject: Re: Query question
Then do it with 2 queries,
SELECT @d := MAX( datestamp ) FROM table2 WHERE parentID = X;SELECT *
FROM table2
WHERE parentID = X AND datestamp=@d;
PB
-----
Jeff McKeon wrote:Thanks all but I don't have a mysql version high enough for subqueries. Thanks, Jeff-----Original Message----- From: Peter Brawley [mailto:peter.brawley@stripped] Sent: Monday, April 25, 2005 4:01 PM To: Jeff McKeon Cc: mysql@stripped Subject: Re: Query question Jeff, Something like ... SELECT * FROM table2 AS a WHERE datestamp = ( SELECT MAX( b.datestamp ) FROM table2 AS b WHERE a.parentID = b.parentID ); PB ----- Jeff McKeon wrote:I have a table that contains records that link back to amain talbe ina many to one configuration linked by table1.id = table2.parentid Table1 (one) Table2 (many) I want to pull the latest records from table2 for eachrecord in table1where certain criteria applie. So, if record 100 in table1 links to 5 corresponding recordsin table2,I want to pull the latest record from table2 where table2.parentid = 100 and table2.user not like 'john' There is a datestamp field in table2. I just can't figure out how to do this. Thanks, Jeff-- No virus found in this outgoing message. Checked by AVG Anti-Virus. Version: 7.0.308 / Virus Database: 266.10.2 - Release Date: 4/21/2005
No virus found in this incoming message. Checked by AVG Anti-Virus. Version: 7.0.308 / Virus Database: 266.10.2 - Release Date: 4/21/2005