|
|
|
выборка всех записей с подсчетом количества записей с одинаковым значением поля
|
|||
|---|---|---|---|
|
#18+
Есть таблица: id | field --------- 1 | a --------- 2 | b --------- 3 | b --------- 4 | a --------- 5 | c --------- 6 | a нужен запрос, который выдаст следующий результат: id | field | count ----------------- 1 | a | 3 ----------------- 4 | a | 3 ----------------- 6 | a | 3 ---------------- 2 | b | 2 ---------------- 3 | b | 2 --------------- 5 | c | 1 количество можно бы подсчитать с помощью GROUP BY field, но список id будет не полным из-за группировки, а нужен именно отсортированный список id. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.08.2010, 14:19 |
|
||
|
выборка всех записей с подсчетом количества записей с одинаковым значением поля
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. как то так. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.08.2010, 14:24 |
|
||
|
выборка всех записей с подсчетом количества записей с одинаковым значением поля
|
|||
|---|---|---|---|
|
#18+
kvasabamaа нужен именно отсортированный список id.Как я понял, отсортированный по field? Попробуйте варианты Код: plaintext 1. 2. 3. 4. Код: plaintext 1. 2. 3. 4. 5. Второй вариант - как у ScareCrow, с попыткой воспользоваться старым значением для того же field (не пересчитывать каждый раз). Для обоих вариантов неплохо бы индекс по field ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.08.2010, 15:35 |
|
||
|
выборка всех записей с подсчетом количества записей с одинаковым значением поля
|
|||
|---|---|---|---|
|
#18+
SELECT t1.id , t1.field , COUNT( t1.field) AS b_count FROM table_name as t1 LEFT JOIN table_name AS t2 ON t1.field = t2.field GROUP BY t1.id ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2014, 11:57 |
|
||
|
выборка всех записей с подсчетом количества записей с одинаковым значением поля
|
|||
|---|---|---|---|
|
#18+
Неправильно. И вообще ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2014, 12:18 |
|
||
|
|

start [/forum/topic.php?fid=47&fpage=90&tid=1831313]: |
0ms |
get settings: |
7ms |
get forum list: |
14ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
47ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
34ms |
get tp. blocked users: |
1ms |
| others: | 210ms |
| total: | 327ms |

| 0 / 0 |
