Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.php > #4677

Re: Fast/Easy way to extract a column from multi-dimensional array?

From John Drako <jbravo556@gmail.removethis.com>
Newsgroups comp.lang.php
Subject Re: Fast/Easy way to extract a column from multi-dimensional array?
Date 2012-01-29 13:54 -0500
Organization AAL - Anonymous At Large
Message-ID <jg44kc01tkq@news6.newsguy.com> (permalink)
References <jfv06v01hoa@news6.newsguy.com> <4F23B684.8030602@arnowelzel.de>

Show all headers | View raw


On Sat, 28 Jan 2012 03:49:08 -0500, Arno Welzel wrote
(in article <4F23B684.8030602@arnowelzel.de>):

> John Drako, 2012-01-27 21:08:
> 
>> I'm looking for a way to get all the values from the column of a two 
>> dimensional array.
>> 
>> For example, I have a query on a mysql database that returns 10 rows 
>> from the database, I would like to quickly (read low cpu load) extract 
>> all the IDs from all the rows returned to reuse in another query.
>> 
>> So let's say I use:
>> 
>> $arr = mysqli_fetch_all($result, MYSQLI_ASSOC);
>> 
>> and $arr looks like:
>> 
>> RecordID, name, last name, title
>> RecordID, name, last name, title
>> RecordID, name, last name, title
>> RecordID, name, last name, title
>> RecordID, name, last name, title
>> RecordID, name, last name, title
>> etc...
>> 
>> I need to get all the 'RecordID' from the results to reuse in other 
>> queries.
> [...]
>> The site is very busy and CPU cycles count. I'm trying to avoid left 
>> joining three gigantic tables.
> 
> You always query *all* records with every request?
> 
> And do you already use some kind of byte code cache (XCache etc.)? This
> also helps a lot to reduce the CPU load and the scripts can be executed
> 3-4 times faster, since the interpretation will only be done once and
> further requests get served by the cached byte code.

Thank you all for the suggestions. I've learned a lot.

I've used your suggestions and I benchmarked the table joins against the 
function fetching after. One db request with a single 3-Tables join vs 
one db request following by getting all the id and then followed by two 
db requests proved that this is best done by joining the tables.

The initial database request was returning results in 0.002secs (avg), 
and after joining the three tables it was returning results in 0.0021 
seconds (avg), so the price was quite insignificant.

Back to comp.lang.php | Previous | Next — Previous in thread | Find similar | Unroll thread


Thread

Fast/Easy way to extract a column from multi-dimensional array? John Drako <jbravo556@gmail.removethis.com> - 2012-01-27 15:08 -0500
  Re: Fast/Easy way to extract a column from multi-dimensional array? "J.O. Aho" <user@example.net> - 2012-01-27 21:50 +0100
    Re: Fast/Easy way to extract a column from multi-dimensional array? "M. Strobel" <sorry_no_mail_here@nowhere.dee> - 2012-01-27 22:49 +0100
  Re: Fast/Easy way to extract a column from multi-dimensional array? Thomas Mlynarczyk <thomas@mlynarczyk-webdesign.de> - 2012-01-27 21:52 +0100
    Re: Fast/Easy way to extract a column from multi-dimensional array? Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2012-01-27 22:42 +0100
      Re: Fast/Easy way to extract a column from multi-dimensional array? Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2012-01-27 22:55 +0100
      Re: Fast/Easy way to extract a column from multi-dimensional array? Thomas Mlynarczyk <thomas@mlynarczyk-webdesign.de> - 2012-01-27 23:49 +0100
  Re: Fast/Easy way to extract a column from multi-dimensional array? Jeff North <jnorthau@yahoo.com.au> - 2012-01-28 13:52 +1100
    Re: Fast/Easy way to extract a column from multi-dimensional array? Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2012-01-28 21:28 +0100
  Re: Fast/Easy way to extract a column from multi-dimensional array? Arno Welzel <usenet@arnowelzel.de> - 2012-01-28 09:49 +0100
    Re: Fast/Easy way to extract a column from multi-dimensional array? John Drako <jbravo556@gmail.removethis.com> - 2012-01-29 13:54 -0500

csiph-web