|
|
|
Помогите с запоросом Дузья!
|
|||
|---|---|---|---|
|
#18+
Буду краток, 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......., а не услуовиями. Буду премного благодарен!!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.04.2015, 15:01:36 |
|
||
|
Помогите с запоросом Дузья!
|
|||
|---|---|---|---|
|
#18+
select ...., count(...) ... group by .... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.04.2015, 15:29:24 |
|
||
|
Помогите с запоросом Дузья!
|
|||
|---|---|---|---|
|
#18+
Лаконично =) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.04.2015, 17:11:08 |
|
||
|
Помогите с запоросом Дузья!
|
|||
|---|---|---|---|
|
#18+
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) было число из размещённых тачек.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.04.2015, 17:13:31 |
|
||
|
Помогите с запоросом Дузья!
|
|||
|---|---|---|---|
|
#18+
Код: sql 1. но ваша структура не сможет отобразить ситуацию, если юзер будет королем и ещё немножечко шить по вечерам :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.04.2015, 08:48:54 |
|
||
|
|

start [/forum/topic.php?fid=47&fpage=139&tid=1833291]: |
0ms |
get settings: |
9ms |
get forum list: |
18ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
40ms |
get topic data: |
17ms |
get forum data: |
3ms |
get page messages: |
48ms |
get tp. blocked users: |
1ms |
| others: | 236ms |
| total: | 378ms |

| 0 / 0 |
