Homer_J
Homer_J

Reputation: 3323

MySQL WHERE IN issue

DOH! It's now resolved:

HUMAN ERROR: Helps if I iterate through the data as everyone has suggested below...added the following code to loop through the results...

while ($rowprevprev = mysql_fetch_assoc($resultprevprev)) {
            print_r($rowprevprev);
        }

[Hangs head in shame....suitably embarassed...]

Cheers everyone!

H.

Hi,

Have a simply piece of code (thanks to an earlier posting):

SELECT
  AVG (q1) AS q1, AVG (q2) AS q2, AVG (q3) AS q3, AVG (q4) AS q4,
  AVG (q5) AS q5, AVG (q6) AS q6, AVG (q7) AS q7, AVG (q8) AS q8,
  AVG (q9) AS q9, AVG (q10) AS q10, AVG (q11) AS q11, AVG (q12) AS q12,
  AVG (q13) AS q13, AVG (q14) AS q14, AVG (q15) AS q15, AVG (q16) AS q16,
  AVG (q17) AS q17, AVG (q18) AS q18, AVG (q19) AS q19, AVG (q20) AS q20,
  AVG (q21) AS q21, AVG (q22) AS q22
FROM thotels_results
WHERE brand IN ('XYZ','ABC','EFG')
AND date = 'NOV2010' GROUP BY brand;

The output using a query browser is:

q1       q2       q3       q4       q5       q6       q7       q8       q9       q10      q11      q12      q13      q14      q15      q16      q17      q18      q19      q20      q21      q22
8.1724   8.2414   8.2414   7.8966   8.5862   8.5517   9.0000   8.5862   8.1724   7.9655   8.8966   8.6207   8.2414   8.3793   7.8276   8.3793   7.9310   8.4138   8.6897   8.3448   8.8621   8.5172
8.7714   8.8429   8.1643   8.7500   8.7571   8.9000   9.4071   9.1214   8.5714   8.7643   9.5143   8.9429   9.1643   8.9857   7.9500   8.9286   8.7000   9.0429   9.0143   8.7214   9.1214   9.3071
8.6009   8.5686   7.8528   8.3133   8.3423   8.6410   9.0301   8.6912   8.3233   8.3389   9.2029   8.3969   8.6856   8.5017   7.8071   8.4816   8.3512   8.6789   8.6789   8.3913   8.6388   8.8986

When I VAR_DUMP, however, I get the following, it would appear not all the data is there:

array
  0 => string '8.1724' (length=6)
  'q1' => string '8.1724' (length=6)
  1 => string '8.2414' (length=6)
  'q2' => string '8.2414' (length=6)
  2 => string '8.2414' (length=6)
  'q3' => string '8.2414' (length=6)
  3 => string '7.8966' (length=6)
  'q4' => string '7.8966' (length=6)
  4 => string '8.5862' (length=6)
  'q5' => string '8.5862' (length=6)
  5 => string '8.5517' (length=6)
  'q6' => string '8.5517' (length=6)
  6 => string '9.0000' (length=6)
  'q7' => string '9.0000' (length=6)
  7 => string '8.5862' (length=6)
  'q8' => string '8.5862' (length=6)
  8 => string '8.1724' (length=6)
  'q9' => string '8.1724' (length=6)
  9 => string '7.9655' (length=6)
  'q10' => string '7.9655' (length=6)
  10 => string '8.8966' (length=6)
  'q11' => string '8.8966' (length=6)
  11 => string '8.6207' (length=6)
  'q12' => string '8.6207' (length=6)
  12 => string '8.2414' (length=6)
  'q13' => string '8.2414' (length=6)
  13 => string '8.3793' (length=6)
  'q14' => string '8.3793' (length=6)
  14 => string '7.8276' (length=6)
  'q15' => string '7.8276' (length=6)
  15 => string '8.3793' (length=6)
  'q16' => string '8.3793' (length=6)
  16 => string '7.9310' (length=6)
  'q17' => string '7.9310' (length=6)
  17 => string '8.4138' (length=6)
  'q18' => string '8.4138' (length=6)
  18 => string '8.6897' (length=6)
  'q19' => string '8.6897' (length=6)
  19 => string '8.3448' (length=6)
  'q20' => string '8.3448' (length=6)
  20 => string '8.8621' (length=6)
  'q21' => string '8.8621' (length=6)
  21 => string '8.5172' (length=6)
  'q22' => string '8.5172' (length=6)

The VAR_DUMP appears to only bring back the first row of the query and not all three rows. I need to access all three rows of data so I can perform a calculation.

Anyone with any ideas and/or suggestions?

Thanks,

Homer.

Upvotes: 0

Views: 122

Answers (2)

AnD
AnD

Reputation: 3129

well if you're using php,

    $query = mysql_query("do your select query here");

while ($row = mysql_fetch_assoc($query)) {
    var_dump($row);
}

Upvotes: 1

grahamparks
grahamparks

Reputation: 16296

It's not var_dump that's the problem, it's the code you're using to fetch data from MySQL. See this question from yesterday - I think you're making the same mistake.

Upvotes: 1

Related Questions