powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Помогите с запоросом Дузья!
6 сообщений из 6, страница 1 из 1
Помогите с запоросом Дузья!
    #38938358
iova1984
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Буду краток, 3 таблички (сильно урезаны поля - только самое важное)

Табличка USER
CREATE TABLE `user` (
`Id` int(11) NOT NULL AUTO_INCREMENT,
`Name` varchar(64) ,
PRIMARY KEY (`Id`)
);

Табличка FIRM
CREATE TABLE `firm` (
`Id` int(11) NOT NULL AUTO_INCREMENT,
`Name` varchar(255),
`Address` varchar(255),
`UserId` int(11), ----------- UserId - тут тоже нужен, ведь владелец фирмы-салона - изначально такой жэ простой юзер, человек.
PRIMARY KEY (`Id`),
);

Табличка AUTO
CREATE TABLE `auto` (
`Id` int(11) NOT NULL AUTO_INCREMENT,
`Mark` int(11),
`UserId` int(11),
`FirmId` int(11),
А тут интересней: Если UserId=NULL - то тачка салонная
В если тут FirmID = NULL - то тачка пользовательская частника. Так что одинакового значание я UserID и FirmId - никогда не может быть одинаковым.
`Year` year(4),
`Price` decimal(10,0),
PRIMARY KEY (`Id`),
);


Так вот, ребята: Я в цикле на веб-страницы вывожу список всех-всех пользователей - и частникоы, и салонных порльзователей:

SELECT user.Id, firm.Id AS FirmId, user.Name FROM `user` LEFT OUTER JOIN `firm` ON user.Id=firm.UserId
if($row['FirmId'] == NULL) echo "Частник";
else echo "Салон";

Всё отлично выводится, id-юзеров, частник/салон. Но ещё мне хотелось - у каждой записи - писать сисло тачек у каждого пользоватенля - будь то салон, бодь то частник. Как-то красиво это зделатьзапросом, нечто вроде ......(COUN auto.Id) AS AUTO......., а не услуовиями.

Буду премного благодарен!!!
...
Рейтинг: 0 / 0
Помогите с запоросом Дузья!
    #38938390
Pallaris
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
select ...., count(...)
...
group by ....
...
Рейтинг: 0 / 0
Помогите с запоросом Дузья!
    #38938493
iova1984
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Лаконично =)
...
Рейтинг: 0 / 0
Помогите с запоросом Дузья!
    #38938498
iova1984
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SELECT user.Id, firm.Id AS FirmId, user.Name FROM `user` LEFT OUTER JOIN `firm` ON user.Id=firm.UserId
if($row['FirmId'] == NULL) echo "Частник";
else echo "Салон";

Вот весь запросик всего 1-ю строчку надо бы переделать - чтобы чситать сколько к састниуов (FirmId==NULL) и у салонов (UserID==NULL) было число из размещённых тачек....
...
Рейтинг: 0 / 0
Помогите с запоросом Дузья!
    #38938790
retvizan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: sql
1.
SELECT .., (SELECT COUNT(UserId) FROM `auto` WHERE  user.Id=auto.UserId) as `кол-во машин у частников`, .. FROM `user` LEFT OUTER JOIN `firm` ON user.Id=firm.UserId;



но ваша структура не сможет отобразить ситуацию, если юзер будет королем и ещё немножечко шить по вечерам :)
...
Рейтинг: 0 / 0
Помогите с запоросом Дузья!
    #38939681
iova1984
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А не моглибы полннй запрос напимать, уважаемый?
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Помогите с запоросом Дузья!
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]