ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Программирование > PHP, PERL, MySQL, JavaScript
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

Помогите с Sql запросом
  #1  
Старый 16.05.2008, 09:16
Аватар для andrey_a87
andrey_a87
Участник форума
Регистрация: 02.03.2008
Сообщений: 111
Провел на форуме:
130720

Репутация: 6
По умолчанию Помогите с Sql запросом

SELECT DISTINCT
users.UserLogin,
users.UserPassword,
ppersons.Surname,
ppersons.Name,
ppersons.Fathername,
ppersons.RoadName,
stat_tests.TestID,
courses.HourWeight
FROM
users
INNER JOIN ppersons ON (users.UserLink = ppersons.PPersonID)
INNER JOIN stat_tests ON (users.UserID = stat_tests.UserID)
INNER JOIN courses ON (stat_tests.TestID = courses.CourseID)
WHERE
(stat_tests.StatTestResult >= '0,75')



Есть запрос,он выводит результаты следующим образом
UserLogin UserPassword Surname Name Fathername RoadName TestID HourWeight
administrator 101 Владимирович Сергей Егоров Главная дорога 220 9
administrator 101 Владимирович Сергей Егоров Главная дорога 213 9
administrator 101 Владимирович Сергей Егоров Главная дорога 215 9
administrator 101 Владимирович Сергей Егоров Главная дорога 214 9
administrator 101 Владимирович Сергей Егоров Главная дорога 212 9
administrator 101 Владимирович Сергей Егоров Главная дорога 211 9
administrator 101 Владимирович Сергей Егоров Главная дорога 210 9
administrator 101 Владимирович Сергей Егоров Главная дорога 219 9
USER10 OPAP5N Евгеньевна Галина Мунц КуйбРЦБ 213 9
USER10 OPAP5N Евгеньевна Галина Мунц КуйбРЦБ 211 9
USER10 OPAP5N Евгеньевна Галина Мунц КуйбРЦБ 210 9
USER10 OPAP5N Евгеньевна Галина Мунц КуйбРЦБ 220 9

хотелось бы чтобы он подсчитывал кол-во записей в таблице HourWeight, но если я делаю sum(HourWeight) а потом group by userlogin то он бред выводит...(не правдивые данные)
 
Ответить с цитированием

  #2  
Старый 16.05.2008, 09:27
Аватар для Isis
Isis
Флудер
Регистрация: 20.11.2006
Сообщений: 3,316
Провел на форуме:
16641028

Репутация: 2371


По умолчанию

PHP код:
$res mysql_query("SELECT `courses.HourWeight` FROM `users`");
$row mysql_num_rows($res);
echo 
$row 
 
Ответить с цитированием

  #3  
Старый 16.05.2008, 09:30
Аватар для andrey_a87
andrey_a87
Участник форума
Регистрация: 02.03.2008
Сообщений: 111
Провел на форуме:
130720

Репутация: 6
По умолчанию

Вы меня не поняли по средством SQL...хочу чтобы получился ответ

administrator 101 Владимирович Сергей Егоров Главная дорога 72 (т.к. 9*8)
USER10 OPAP5N Евгеньевна Галина Мунц КуйбРЦБ 36 (т.к. 9*4)


а TESTID(наверху) выводится для уникальности записей...

Последний раз редактировалось andrey_a87; 16.05.2008 в 09:36..
 
Ответить с цитированием

  #4  
Старый 16.05.2008, 09:51
Аватар для VDShark
VDShark
Участник форума
Регистрация: 01.02.2007
Сообщений: 286
Провел на форуме:
804931

Репутация: 526
По умолчанию

Цитата:
Сообщение от andrey_a87  
но если я делаю sum(HourWeight) а потом group by userlogin то он бред выводит...(не правдивые данные)
Конечно (он у вас вообще что то выводит?=/ ), потому что в данном случае группировку необходимо провести по всем идентичным полям.
 
Ответить с цитированием

  #5  
Старый 16.05.2008, 09:55
Аватар для andrey_a87
andrey_a87
Участник форума
Регистрация: 02.03.2008
Сообщений: 111
Провел на форуме:
130720

Репутация: 6
По умолчанию

как это можно ещё изобразить? ГОРЮЮЮЮЮЮЮЮЮЮЮЮЮЮЮЮЮЮЮЮЮЮ ЮЮЮЮЮЮ
 
Ответить с цитированием

  #6  
Старый 16.05.2008, 09:57
Аватар для VDShark
VDShark
Участник форума
Регистрация: 01.02.2007
Сообщений: 286
Провел на форуме:
804931

Репутация: 526
По умолчанию

Цитата:
Сообщение от andrey_a87  
как это можно ещё изобразить? ГОРЮЮЮЮЮЮЮЮЮЮЮЮЮЮЮЮЮЮЮЮЮЮ ЮЮЮЮЮЮ
Всмысле изобразить?

Если хочешь с группировкой - вот (по понятным причинам не тестировалось)
Код:
SELECT DISTINCT
users.UserLogin,
users.UserPassword,
ppersons.Surname,
ppersons.Name,
ppersons.Fathername,
ppersons.RoadName,
sum(courses.HourWeight)
FROM
users
INNER JOIN ppersons ON (users.UserLink = ppersons.PPersonID)
INNER JOIN stat_tests ON (users.UserID = stat_tests.UserID)
INNER JOIN courses ON (stat_tests.TestID = courses.CourseID)
WHERE
(stat_tests.StatTestResult >= '0,75')
GROUP BY UserLogin, UserPassword, Surname, Name, Fathername, RoadName

Последний раз редактировалось VDShark; 16.05.2008 в 10:00..
 
Ответить с цитированием

  #7  
Старый 16.05.2008, 10:11
Аватар для andrey_a87
andrey_a87
Участник форума
Регистрация: 02.03.2008
Сообщений: 111
Провел на форуме:
130720

Репутация: 6
По умолчанию

Но в таком случае он считает сумму криво. При условии того, что:

administrator 101 Владимирович Сергей Егоров Главная дорога 220 9
administrator 101 Владимирович Сергей Егоров Главная дорога 213 9
administrator 101 Владимирович Сергей Егоров Главная дорога 215 9
administrator 101 Владимирович Сергей Егоров Главная дорога 214 9
administrator 101 Владимирович Сергей Егоров Главная дорога 212 9
administrator 101 Владимирович Сергей Егоров Главная дорога 211 9
administrator 101 Владимирович Сергей Егоров Главная дорога 210 9
administrator 101 Владимирович Сергей Егоров Главная дорога 219 9

9*8=72, он выводит число больше 1000000
 
Ответить с цитированием

  #8  
Старый 16.05.2008, 10:22
Аватар для VDShark
VDShark
Участник форума
Регистрация: 01.02.2007
Сообщений: 286
Провел на форуме:
804931

Репутация: 526
По умолчанию

Тогда скинь что ли структуру участвующих табличек... а то так с утра фантазия плохо работает)
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Обнаружение Sql инъекций в Oracle, часть первая k00p3r Чужие Статьи 1 12.07.2005 08:51
Обнаружение Sql инъекций в Oracle, часть вторая k00p3r Чужие Статьи 0 13.06.2005 11:26
Sql инъекция и Oracle, часть первая k00p3r Чужие Статьи 0 13.06.2005 11:23
Внедрение Sql кода с завязанными глазами k00p3r Чужие Статьи 0 12.06.2005 20:48
SQL Injection в Oracle k00p3r Чужие Статьи 0 12.06.2005 12:41



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ