COUNT(*) + UNION

123

Guest
COUNT(*) + UNION

$count = mysql_query("
(SELECT COUNT(*) AS count FROM " . DB_PREFIX . "table1 WHERE option LIKE '%$s%')
UNION
(SELECT COUNT(*) AS count FROM " . DB_PREFIX . "table2 WHERE option LIKE '%$s%')
");

echo $count['count'] - выводит только для table1. А table2 почему-то игнорируется.. В чем ошибка?
 

camka

не самка
Смотри в манул, что возвращает на самом деле mysql_query
и как надо извлекать строки из результата

+ UNION ALL
 

123

Guest
UNION ALL не помогает =(

-~{}~ 29.04.05 17:38:

все перепробовал - ничего не работает, в манауле ни слова про union + count(*)
 

f1

formula 1
а слабо получить две строки результата и сложить :)
 

123

Guest
нет, но я хотел одним запросом. Наверн бы не задавал вопросов, если бы их не было.

-~{}~ 29.04.05 21:01:

да, есть в цикле mysql_fetch_array
 

camka

не самка
Если смотреть по тому куску кода, который ты привел, ты присваеваешь переменной $count результат, возвращаемый функцией mysql_query, а потом пытаешься выловить из неё элементы, будто она является массивом. А она таковым не является ну никак.
 

123

Guest
да блин, я что совсем тупой по твоему?
Ну канеш это $count = mysql_fetch_array(mysql_query(bla bla))
Сократил чуток код, дабы не переписывать все, и сразу начинаются придирки. Ты бы еще спросил, почему у меня в примере тега <?php нет
 

yugene

Отошел от дел
123, выполни свой запрос в phpMyAdmin'е и посмотри на результат. потом почитай, что делает функция mysql_fetch_array().
 

123

Guest
при чем здесь mysql_fetch_array???
Она вытаскивает ассоциативный и числовой массивы, что в данном случае и надо
 
Сверху