Правила     Закладки     Карма    Календарь    Журналы    Помощь    Поиск    PDA    Чат   
        СМС-ки
   
Пейджер выключен!
 
Фильтр авторов:    показать 
  скрыть
  Ответ в темуСоздание новой темыСоздание опроса

> общее число записей из четырех таблиц
karm  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Пользователь
**

Профиль
Группа: Пользователь
Сообщений: 85
Пользователь №: 43872
На форуме: 4 месяца, 2 дня
Карма: 1




вСЕМ ПРИВЕТ, КТО НИбудь знает как вывести общее число записей из четырех таблиц?

по типо
mysql_query("SELECT SUM(COUNT(*) FROM table 1 UNION SELECT COUNT(*) FROM table 2 UNION SELECT COUNT(*) FROM table 3 UNION SELECT COUNT(*) FROM table 4 UNION SELECT COUNT(*) FROM table 5)");
так можно?


Это сообщение отредактировал karm - 23.05.2017 - 19:13
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Invis1ble  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме




******

Профиль
Группа: Эксперт
Группа переписки
Сообщений: 11943
Пользователь №: 23195
На форуме: 6 лет, 11 месяцев
Карма: 435

Трезвый :
7 лет, 9 месяцев, 30 дней


select sum(cnt) from (
select count(*) cnt from table1
union
select
count(*) cnt from table2
) u


--------------------
PMПисьмо на e-mail пользователюСайт пользователя
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Guest  
Дата
Цитировать сообщение


Гость пожелал остаться неизвестным

Unregistered









а cnt - что означает? может as cnt?

не получается

 $result = mysql_query("SELECT SUM (cnt) FROM(SELECT COUNT(*) cnt FROM `table1` UNION SELECT COUNT(*) cnt FROM `table2`  UNION SELECT COUNT(*) cnt FROM `table3`  UNION SELECT COUNT(*) cnt FROM `table4`");
if(!$result) {die("Ошибка");}
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Kusss  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 1568
Пользователь №: 28976
На форуме: 5 лет, 10 месяцев, 25 дней
Карма: 98




Invis1ble
Спасибо, не знал - прикольно.

karm
AS не обязательно указывать.(хотя я всегда пишу, код читабельнее)
У тебя в коде синтаксическая ошибка. Пиши код как предложили выше, и сразу увидишь что не так
$sql = "
SELECT
SUM (summa)
FROM (
SELECT COUNT(*) AS summa FROM `table1`
UNION
SELECT COUNT(*) AS summa FROM `table2`
UNION
SELECT COUNT(*) AS summa FROM `table3`
UNION
SELECT COUNT(*) AS summa FROM `table4`
) AS u
"
;
$result = mysql_query($sql) OR die( 'Ошибка запроса:'. mysql_error() );


Это сообщение отредактировал Kusss - 24.05.2017 - 14:51
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
karm  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Пользователь
**

Профиль
Группа: Пользователь
Сообщений: 85
Пользователь №: 43872
На форуме: 4 месяца, 2 дня
Карма: 1




ага, супер класс))
а извиняюсь за глупый вопрос, как это теперь присвоить переменной
через mysql_fetch_row();?

2. И еще, вообще для чего нужно as, практически ? тоесть AS summa - здесь создается переменная или как?

Это сообщение отредактировал karm - 24.05.2017 - 11:53
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Kusss  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 1568
Пользователь №: 28976
На форуме: 5 лет, 10 месяцев, 25 дней
Карма: 98




Ну как-то так
/*
Вот например связанные таблицы. Нам нужно вытащить два id из каждой таблицы
AS служит для переименования переменных
*/

$array = [];
$sql = "
SELECT
t1.id AS t1_id, t1.name, t1.level,
t2.id AS t2_id
FROM
`table` AS t1
LEFT JOIN
`table2` AS t2 ON t2.user_id = t1.id
"
;
$result = mysql_query($sql) OR die( 'Ошибка запроса:'. mysql_error() );
if (mysql_num_rows($result) > 0){
// Если строк много применяют while
while ($value = mysql_fetch_assoc($result)) {
// 1 Вариант: Записываем ВСЕ данные в массив, с ключами по порядку
// $array[] = $value;

// 2 Вариант: Создаем ассоциативный массив

$array[ $value['t1_id'] ] = [
'name' => $value['name'],
'level' => $value['level'],
't2_id' => $value['t2_id'],
];

}
}

echo '<pre>';
print_r($array);
echo '</pre>';
Если строка на выходе одна, (как в примере с количеством строк) можно сделать просто вот так
$value = mysql_fetch_assoc($result);
echo $value['SUM (summa)'];


Это сообщение отредактировал Kusss - 24.05.2017 - 12:38
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
chee  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Сын полка
Сообщений: 1941
Пользователь №: 38654
На форуме: 3 года, 5 месяцев, 21 день
Карма: 46




SELECT
(SELECT COUNT(*) AS summa FROM `table1`) +
(
SELECT COUNT(*) AS summa FROM `table2`) +
(
SELECT COUNT(*) AS summa FROM `table3`) +
(
SELECT COUNT(*) AS summa FROM `table4`) AS count


--------------------
Люди, имеющие низкий уровень квалификации, делают ошибочные выводы, принимают неудачные решения и при этом неспособны осознавать свои ошибки в силу низкого уровня своей квалификации

Мой блог
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
karm  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Пользователь
**

Профиль
Группа: Пользователь
Сообщений: 85
Пользователь №: 43872
На форуме: 4 месяца, 2 дня
Карма: 1




Kusss, что-то сложноват-то ))

SELECT
t1.id AS t1_id, t1.name, t1.level,

в данном случае t1.id AS t1_id - опять то же название чтоли?
t1.id AS t1_id, t1.name, - а пошло все через запятую если мы одну току присвоили как as - [b]t1.id AS t1_id, t

Это сообщение отредактировал karm - 25.05.2017 - 14:37
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
karm  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Пользователь
**

Профиль
Группа: Пользователь
Сообщений: 85
Пользователь №: 43872
На форуме: 4 месяца, 2 дня
Карма: 1




Цитата (chee @ 24.05.2017 - 14:22)
SELECT
(SELECT COUNT(*) AS summa FROM `table1`) +
(
SELECT COUNT(*) AS summa FROM `table2`) +
(
SELECT COUNT(*) AS summa FROM `table3`) +
(
SELECT COUNT(*) AS summa FROM `table4`) AS count

а как вывести все это в переменную, полегче способом?
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
sergeiss  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Сидел он, дум великих полон - и вдаль глядел
******

Профиль
Группа: Эксперт
Группа переписки
Сообщений: 15381
Пользователь №: 4190
На форуме: 9 лет, 4 месяца, 18 дней
Карма: 470




Цитата (karm @ 25.05.2017 - 14:38)
а как вывести все это в переменную, полегче способом?

mysql_fetch_assoc() или mysql_fetch_result()


--------------------
* Хэлп по PHP
* Описалово по JavaScript
* Хэлп и СУБД для PostgreSQL

* Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги.

* "накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)

user posted image
PMICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
  Быстрый ответ
Информация о Госте
Введите Ваше имя
Кнопки кодов
Для вставки цитаты, выделите нужный текст и
НАЖМИТЕ СЮДА
Введите сообщение
Смайлики
:huh:  :o  ;) 
:P  :D  :lol: 
B)  :rolleyes:  <_< 
:)  :angry:  :( 
:unsure:  :blink:  :ph34r: 
     
Показать всё

Опции сообщения  Включить смайлики?
 Включить подпись?
 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:

Опции темы Ответ в темуСоздание новой темыСоздание опроса