вывожу через echo количество записей из бд... почему погрешность составляет 4 записи ? должно быть 500, выводит 504 ? почему так? Код (Text): $m_all = mysql_fetch_row(mysql_query("SELECT COUNT(*) FROM base WHERE num = '1' ")); echo $m_all[0];
я просто заметил несоответствие, после того как отсортировал записи через city $m_all - это общее число, оно должно быть равно $m_1 + $m_2, но если сложить $m_1 + $m_2, то $m_all на 4 записи больше Код (Text): $m_1 = mysql_fetch_row(mysql_query("SELECT COUNT(*) FROM base WHERE num = '1' city='1' ")); $m_2 = mysql_fetch_row(mysql_query("SELECT COUNT(*) FROM base WHERE num = '1' city='2' "));
rustoke, в предыдущем посте ты пропустил какой-то знак, вероятно AND. как логично предположил [vs], вероятно сумма не сходится от того, что где-то city может быть не 1 и не 2. выведи результат запроса "SELECT num, city, COUNT(*) FROM base GROUP BY num, city" — узнаешь какие сочетания значений и в каком количестве у тебя присутствуют.
SELECT * FROM `base` WHERE `num` = '1' AND `city` NOT IN ('1', '2') - выводит тоже самое значение , что и у меня.... ...AND забыл здесь на форуме дописать, а так он есть... SELECT num, city, COUNT(*) FROM base GROUP BY num, city - этот вариант показывает пустое значение... думаю в бд в какой то из строк пустые значения city либо num.... буду искать.... спасибо за ответы
Подскажите, как реализовать что то типа: Код (Text): SELECT * FROM `base` WHERE `num` = '1' AND `num` != '2' т.е. 2 значения для одной переменной
Что ты этим хотел сказать? Условие WHERE описывает какой должна быть выбранная запись. В одной записи поле не может равняться сразу двум разным значениям. "Вася упорот И Вася трезв" — это невозможно. Такой Вася не попадет в выборку. Но если ты хотел сказать "num равен одному из двух значений", то Код (Text): … WHERE `num`=1 OR `num`=2 или Код (Text): … WHERE `num` IN (1, 2) или Код (Text): … WHERE `num` BETWEEN 1 AND 2 или Код (Text): SELECT … WHERE `num`=1 UNION SELECT … WHERE `num`=2
UNION помог, я совсем забыл про него, спасибо! я хотел что бы num = 1 и не был равен пустому значению num != ''
знаешь друг, не стыдно чего-то не знать. стыдно изображать из себя того, кем не являешся. это всё равно заметят. и тебе надо подтянуть скиллы в логике: когда используется И, а когда ИЛИ.