Вниз
Скачать: CL | DM;

Помогите с SQL-запросом.   Найти похожие ветки 

← →
Zahar   (2005-05-27 01:11) [0]

Момогите создать запрос.

Есть 2 таблицы:

+-------------+
| CarId       |
+-------------+
| ModelId     |
+-------------+
| Price       |
+-------------+

+-------------+
| ModelId     |
+-------------+
| ModelName   |
+-------------+

Нужно подсчитать кол-во автомобилей каждой модели.

Мне на ум приходит только подсчет типа:

SELECT COUNT(*) AS TOT FROM <TABLE_1> WHERE ModelId=<MODEL_1>
SELECT COUNT(*) AS TOT FROM <TABLE_1> WHERE ModelId=<MODEL_2>
...
SELECT COUNT(*) AS TOT FROM <TABLE_1> WHERE ModelId=<MODEL_N>


Но придется делать таких запросов столько, сколько видов моделей у меня есть во второй таблице.

Может есть вариант как это сделать одним запросом или я хочу невозможное?


← →
highlander   (2005-05-27 01:18) [1]

Я конечно не уверен - но попробуй так
SELECT COUNT(*) AS TOT FROM TABLE_1,TABLE_2
WHERE TABLE_1.ModelId=TABLE_2.ModelId


← →
highlander   (2005-05-27 01:20) [2]

А еще верней будет так:
SELECT COUNT(TABLE_1.ModelId) AS TOT FROM TABLE_1,TABLE_2
WHERE TABLE_1.ModelId=TABLE_2.ModelId


← →
ANB ©   (2005-05-27 11:12) [3]

group by.
Ща ветку закроют. Тема не оформлена.


← →
panov ©   (2005-05-27 11:13) [4]

Ща ветку закроют

Пока нет.
но этот вопрос - о закрытии веток с подобными заголовками - обсуждается.


← →
ANB ©   (2005-05-27 11:15) [5]


> panov ©   (27.05.05 11:13) [4]
- а чего его обсуждать ? С утра еще закрывали. В правилах написано - сабж писать со смыслом. Мне чем "королевство" не нравится - то что там бестолковые сабжы.


← →
Polevi ©   (2005-05-27 11:19) [6]

select modelid, count(*) from table1 group by modelid


← →
Lexer ©   (2005-05-27 11:21) [7]

SELECT T2.ModelID, T2.ModelName, COUNT(T1.CarId)
FROM TABLE_1 T1
INNER JOIN TABLE_2 T2
ON T1.ModelID = T2.ModelID
GROUP BY T2.ModelID, T2.ModelName


← →
Sergey13 ©   (2005-05-27 11:33) [8]

2[4] panov ©   (27.05.05 11:13)
Я тоже задолбался уже сегодня в базы по напрасну постить. 8-)
Мне интересно, а как бы ты сформулировал название для этой ветки конкретно. Просто для образца.
Сори за офтоп.


← →
ANB ©   (2005-05-27 11:43) [9]

<offtop>

> а как бы ты сформулировал название для этой ветки конкретно

С одной стороны ты прав. А с другой - только на первой странице - 3 одинаковых сабжа "Помогите составить запрос".
Может попросить админов сделать отдельную конференцию для таких сабжей ? Причем в вопросе даже ТЗ толком не сформировано. Мне не влом размять мозги и написать запрос, но как отвечать то ? В этой ветке вопрос задан корректно, можно было вытащить часть в сабж. Но автор не читал книжек и док по SQL.
</offtop>


← →
Sergey13 ©   (2005-05-27 11:50) [10]

2 [9] ANB ©   (27.05.05 11:43)
<offtop>
Мне вообще кажется что это правило должно носить рекомендательный характер. Я может и сам не попрусь во всякие "Хелп" и "Помогите". Но с другой стороны - бывают вопросы действительно не знаешь как назвать.
ИМХО.
Еще раз сори.
Наверное в Потрпаться надо переносить. 8-)
</offtop>



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.028 c
1-1119435275
Wpn_
2005-06-22 14:14
2005.07.11
MediaPlayer


14-1117957947
Antonn
2005-06-05 11:52
2005.07.11
Многопоточное приложение


3-1116433390
Делфенок
2005-05-18 20:23
2005.07.11
Чтение информации из dbf


3-1117461592
Iova
2005-05-30 17:59
2005.07.11
Как соединить 2 таблицы?


14-1118726840
Тульский
2005-06-14 09:27
2005.07.11
Майкл Джексон




   Наверх