Гость
Форумы / MySQL [игнор отключен] [закрыт для гостей] / 6 часов считает. Как оптимизировать? / 25 сообщений из 35, страница 1 из 2
10.02.2021, 12:03
    #40043938
miltorg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
6 часов считает. Как оптимизировать?
6 часов считает. Как оптимизировать?

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
CREATE TABLE t30 

select t20.id as id1,  t21.id as id2,

MAKE_SET (t20.str_bit1 & t21.str_bit1,
50,49,48,47,46,45,44,43,42,41,40,39,38,37,36,35,34,33,32,
31,30,29,28,27,26,25,24,23,22,21,20,19,18,17,16,15,14,13,12,11,10,9,8,7,6,5,4,3,2,1) as u1,

MAKE_SET (t20.str_bit2 & t21.str_bit2,
99,98,97,96,95,94,93,92,91,90,89,88,87,86,85,84,83,82,81,80,79,78,77,76,75,74,73,72,71,
70,69,68,67,66,65,64,63,62,61,60,59,58,57,56,55,54,53,52,51) as u,

BIT_COUNT(t20.str_bit1 & t21.str_bit1)+BIT_COUNT(t20.str_bit2 & t21.str_bit2) as XXX,

t20.idold, t20.XXX as XXXold

from t20 join t20 as t21
where  t20.id<t21.id
AND BIT_COUNT(t20.str_bit1 & t21.str_bit1)+BIT_COUNT(t20.str_bit2 & t21.str_bit2) >= 10
...
Рейтинг: 0 / 0
10.02.2021, 12:07
    #40043939
miltorg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
6 часов считает. Как оптимизировать?
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
mysql> select * from t20 limit 6;
+----+----------------------------------+--------------------+--------------------+-------+------+
| id | str                              | str_bit1           | str_bit2           | idold | XXX  |
+----+----------------------------------+--------------------+--------------------+-------+------+
|  1 | 38,34,32,31,29,17,15,13,76,60,51 | 0x0000002A002D1000 | 0x0001008000800000 | 1,25  |   11 |
|  2 | 40,34,31,29,26,21,17,15,14,13,51 | 0x0000003A21290400 | 0x0001000000000000 | 1,269 |   11 |
|  3 | 40,38,26,15,14,13,76,67,60,51    | 0x0000003801001400 | 0x0001008100800000 | 1,347 |   10 |
|  4 | 44,42,39,34,32,29,15,67,63,60,51 | 0x0000000800250940 | 0x0001009100000000 | 1,373 |   11 |
|  5 | 42,40,34,31,26,21,17,67,63,60    | 0x0000000221090500 | 0x0000009100000000 | 1,398 |   10 |
|  6 | 40,38,34,29,21,17,15,14,67,63,51 | 0x0000001A20211400 | 0x0001001100000000 | 1,498 |   11 |
+----+----------------------------------+--------------------+--------------------+-------+------+
...
Рейтинг: 0 / 0
10.02.2021, 12:07
    #40043940
crutchmaster
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
6 часов считает. Как оптимизировать?
miltorg,

Шо, опять?
...
Рейтинг: 0 / 0
10.02.2021, 12:09
    #40043942
miltorg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
6 часов считает. Как оптимизировать?
Код: sql
1.
2.
3.
4.
5.
6.
mysql> select count(*) from t20;
+----------+
| count(*) |
+----------+
|    66422 |
+----------+
...
Рейтинг: 0 / 0
10.02.2021, 12:13
    #40043943
miltorg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
6 часов считает. Как оптимизировать?
Выдало:

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
mysql> select * from t30 limit 8;
+------+------+----------------------+----------------------+------+----------+--------+
| id1  | id2  | u1                   | u                    | XXX  | idold    | XXXold |
+------+------+----------------------+----------------------+------+----------+--------+
| 1022 | 1033 | 50,29,21             | 71,70,64,63,61,60,53 |   10 | 39,675   |     10 |
| 2390 | 2403 | 44,29,27,23,20,18,15 | 77,76,54             |   10 | 92,1107  |     13 |
| 3436 | 3440 | 45,43,32,29,23,13    | 78,77,75,63          |   10 | 133,4178 |     11 |
| 4006 | 4012 | 49,34,27,19          | 72,69,67,56,54,52    |   10 | 155,3435 |     12 |
| 4156 | 4170 | 45,32,24,20,16,13,10 | 67,66,56             |   10 | 162,1011 |     10 |
| 4675 | 4690 | 43,41,38,20,19,15    | 74,66,54,51          |   10 | 182,1262 |     11 |
| 5125 | 5129 | 44,34,28,22,9,4,3    | 65,60,54             |   10 | 201,2106 |     10 |
| 5242 | 5261 | 38,37,36,29,18,13,2  | 73,65,51             |   10 | 206,1238 |     10 |
+------+------+----------------------+----------------------+------+----------+--------+
...
Рейтинг: 0 / 0
10.02.2021, 12:15
    #40043944
miltorg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
6 часов считает. Как оптимизировать?
стоп. Первая идея. Ведь 10-ки можно было и не считать!
А я прогнал и 10-ки тоже.
А это большая половина таблицы.
Но даже если расчёт сократится до 3 часов на 10-ке - то это всё равно много.
...
Рейтинг: 0 / 0
10.02.2021, 12:31
    #40043948
miltorg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
6 часов считает. Как оптимизировать?
Первая строка этой таблицы - вроде как должна идти последовательно, а она возвращается назад:


Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
120.
121.
122.
123.
124.
125.
126.
127.
128.
129.
130.
131.
132.
133.
134.
135.
136.
137.
138.
139.
140.
141.
142.
143.
144.
145.
146.
147.
148.
149.
150.
151.
152.
153.
154.
155.
156.
157.
158.
159.
160.
161.
162.
163.
164.
165.
166.
167.
168.
169.
170.
171.
172.
173.
174.
175.
176.
177.
178.
179.
180.
181.
182.
mysql> select * from t30;
+-------+-------+----------------------------+----------------------+------+-----------+--------+
| id1   | id2   | u1                         | u                    | XXX  | idold     | XXXold |
+-------+-------+----------------------------+----------------------+------+-----------+--------+
|  1022 |  1033 | 50,29,21                   | 71,70,64,63,61,60,53 |   10 | 39,675    |     10 |
|  2390 |  2403 | 44,29,27,23,20,18,15       | 77,76,54             |   10 | 92,1107   |     13 |
|  3436 |  3440 | 45,43,32,29,23,13          | 78,77,75,63          |   10 | 133,4178  |     11 |
|  4006 |  4012 | 49,34,27,19                | 72,69,67,56,54,52    |   10 | 155,3435  |     12 |
|  4156 |  4170 | 45,32,24,20,16,13,10       | 67,66,56             |   10 | 162,1011  |     10 |
|  4675 |  4690 | 43,41,38,20,19,15          | 74,66,54,51          |   10 | 182,1262  |     11 |
|  5125 |  5129 | 44,34,28,22,9,4,3          | 65,60,54             |   10 | 201,2106  |     10 |
|  5242 |  5261 | 38,37,36,29,18,13,2        | 73,65,51             |   10 | 206,1238  |     10 |
|  5981 |  5993 | 49,45,44,31,30,8,7,4       | 67,55                |   10 | 234,2051  |     11 |
|  7430 |  7439 | 46,34,32,23,22             | 77,69,67,59,53       |   10 | 293,1511  |     11 |
|  8843 |  8856 | 44,36,31,15,11             | 76,74,68,66,51       |   10 | 348,1658  |     10 |
| 10301 | 10321 | 50,16,11,10,6,4            | 78,72,67,64          |   10 | 409,860   |     11 |
| 10354 | 10355 | 47,44,39,31,26,7,6,4       | 69,63                |   10 | 411,2373  |     11 |
| 10988 | 11000 | 41,29,28,27,16,3,1         | 79,78,70             |   10 | 438,679   |     11 |
| 11846 | 11847 | 46,37,36,22,10             | 78,74,64,59,54       |   10 | 472,2981  |     13 |
| 12601 | 12613 | 44,32,23,3                 | 72,69,68,55,53,51    |   10 | 504,1159  |     12 |
| 12613 | 12619 | 44,38,32,23,3              | 72,69,68,55,51       |   10 | 504,2630  |     11 |
| 12872 | 12874 | 35,31,16,7                 | 77,72,64,62,61,55    |   10 | 515,3509  |     10 |
| 13237 | 13244 | 50,34,31,13,11             | 71,69,62,58,54       |   10 | 531,1570  |     11 |
| 13282 | 13302 | 47,37,22,17,14,7           | 78,69,63,57          |   10 | 533,599   |     12 |
| 13879 | 13885 | 42,39,36,28,25,10          | 79,69,65,61          |   10 | 558,1832  |     12 |
| 14754 | 14767 | 43,35,33,28,17             | 76,71,70,62,60       |   10 | 595,2814  |     12 |
| 13282 | 14865 | 47,37,22,17,14,7           | 78,69,63,57          |   10 | 533,599   |     12 |
| 13302 | 14865 | 47,37,22,17,14,7           | 78,69,63,57          |   10 | 533,4844  |     12 |
| 15306 | 15307 | 50,38,24,23,22,17,11,7,5   | 52                   |   10 | 620,3332  |     12 |
| 15321 | 15326 | 44,41,33,31,22,9           | 70,69,68,63          |   10 | 621,1086  |     11 |
| 15713 | 15715 | 44,41,27,8                 | 76,75,67,63,53,51    |   10 | 638,856   |     13 |
| 15864 | 15869 | 50,48,42,38,37,25,8,6      | 67,56                |   10 | 643,2912  |     11 |
| 15922 | 15930 | 47,36,34,31,28,22,18,12    | 70,67                |   10 | 646,2326  |     11 |
| 15953 | 15958 | 47,44,32,28,12,9           | 79,77,72,54          |   10 | 647,2758  |     13 |
| 16079 | 16103 | 50,47,45,38,29,25,1        | 71,56,53             |   10 | 652,1865  |     12 |
| 16280 | 16284 | 40,35,34,29,7,2            | 73,69,66,55          |   10 | 660,991   |     10 |
| 16557 | 16570 | 46,40,32,25,14,13          | 75,71,63,62          |   10 | 673,741   |     12 |
|  1022 | 16611 | 50,29,21                   | 71,70,64,63,61,60,53 |   10 | 39,675    |     10 |
|  1033 | 16611 | 50,29,21                   | 71,70,64,63,61,60,53 |   10 | 39,2769   |     10 |
| 10988 | 16685 | 41,29,28,27,16,3,1         | 79,78,70             |   10 | 438,679   |     11 |
| 11000 | 16685 | 41,29,28,27,16,3,1         | 79,78,70             |   10 | 438,2887  |     12 |
| 16677 | 16686 | 41,39,31,28,19,18,16,1     | 78,74                |   10 | 679,1651  |     10 |
| 16557 | 18121 | 46,40,32,25,14,13          | 75,71,63,62          |   10 | 673,741   |     12 |
| 16570 | 18121 | 46,40,32,25,14,13          | 75,71,63,62          |   10 | 673,3391  |     12 |
| 18231 | 18239 | 39,34,20,13,10,9           | 77,69,63,51          |   10 | 746,3936  |     11 |
| 19543 | 19544 | 47,27,26,25,23,2           | 65,61,55,53          |   10 | 805,2727  |     12 |
| 20244 | 20246 | 40,32,30,29,27,10,6        | 72,63,51             |   10 | 838,4166  |     12 |
| 15713 | 20640 | 44,41,27,8                 | 76,75,67,63,53,51    |   10 | 638,856   |     13 |
| 15715 | 20640 | 44,41,27,8                 | 76,75,67,63,53,51    |   10 | 638,1061  |     11 |
| 10301 | 20749 | 50,16,11,10,6,4            | 78,72,67,64          |   10 | 409,860   |     11 |
| 10321 | 20749 | 50,16,11,10,6,4            | 78,72,67,64          |   10 | 409,4338  |     11 |
| 22784 | 22790 | 50,45,42,40,33,17,13,4,3   | 54                   |   10 | 956,2774  |     12 |
| 16280 | 23530 | 40,35,34,29,7,2            | 73,69,66,55          |   10 | 660,991   |     10 |
| 16284 | 23530 | 40,35,34,29,7,2            | 73,69,66,55          |   10 | 660,1176  |     12 |
|  4156 | 23973 | 45,32,24,20,16,13,10       | 67,66,56             |   10 | 162,1011  |     10 |
|  4170 | 23973 | 45,32,24,20,16,13,10       | 67,66,56             |   10 | 162,3246  |     13 |
| 24158 | 24167 | 38,22,15,14,12             | 76,66,63,57,51       |   10 | 1020,1893 |     11 |
| 15321 | 25564 | 44,41,33,31,22,9           | 70,69,68,63          |   10 | 621,1086  |     11 |
| 15326 | 25564 | 44,41,33,31,22,9           | 70,69,68,63          |   10 | 621,1789  |     10 |
| 25817 | 25821 | 46,38,25                   | 78,73,71,68,65,62,60 |   10 | 1098,2640 |     13 |
|  2390 | 26033 | 44,29,27,23,20,18,15       | 77,76,54             |   10 | 92,1107   |     13 |
|  2403 | 26033 | 44,29,27,23,20,18,15       | 77,76,54             |   10 | 92,4010   |     11 |
| 12601 | 27145 | 44,32,23,3                 | 72,69,68,55,53,51    |   10 | 504,1159  |     12 |
| 12613 | 27145 | 44,32,23,3                 | 72,69,68,55,53,51    |   10 | 504,2630  |     11 |
| 27679 | 27681 | 45,35,33,32,22,21,14       | 72,64,60             |   10 | 1185,3159 |     10 |
| 28564 | 28571 | 43,39,38,28,20,10          | 79,67,63,52          |   10 | 1228,4038 |     10 |
|  5242 | 28779 | 38,37,36,29,18,13,2        | 73,65,51             |   10 | 206,1238  |     10 |
|  5261 | 28779 | 38,37,36,29,18,13,2        | 73,65,51             |   10 | 206,4640  |     11 |
|  4675 | 29246 | 43,41,38,20,19,15          | 74,66,54,51          |   10 | 182,1262  |     11 |
|  4690 | 29246 | 43,41,38,20,19,15          | 74,66,54,51          |   10 | 182,3640  |     10 |
| 31451 | 31459 | 50,30,19,17,15,6,5,3       | 62,51                |   10 | 1375,2945 |     11 |
| 31686 | 31691 | 37,29,21,8,7,5,3           | 78,74,67             |   10 | 1387,3294 |     11 |
| 33633 | 33640 | 44,32,27,23,20             | 79,72,71,63,62       |   10 | 1490,1884 |     11 |
|  7430 | 34021 | 46,34,32,23,22             | 77,69,67,59,53       |   10 | 293,1511  |     11 |
|  7439 | 34021 | 46,34,32,23,22             | 77,69,67,59,53       |   10 | 293,3068  |     10 |
| 13237 | 35113 | 50,34,31,13,11             | 71,69,62,58,54       |   10 | 531,1570  |     11 |
| 13244 | 35113 | 50,34,31,13,11             | 71,69,62,58,54       |   10 | 531,2093  |     14 |
| 16677 | 36528 | 41,39,31,28,19,18,16,1     | 78,74                |   10 | 679,1651  |     10 |
| 16686 | 36528 | 41,39,31,28,19,18,16,1     | 78,74                |   10 | 679,3092  |     12 |
|  8843 | 36671 | 44,36,31,15,11             | 76,74,68,66,51       |   10 | 348,1658  |     10 |
|  8856 | 36671 | 44,36,31,15,11             | 76,74,68,66,51       |   10 | 348,4113  |     11 |
| 39629 | 39646 | 47,45,27,22,10             | 76,73,71,70,55       |   10 | 1826,2536 |     11 |
| 13879 | 39739 | 42,39,36,28,25,10          | 79,69,65,61          |   10 | 558,1832  |     12 |
| 13885 | 39739 | 42,39,36,28,25,10          | 79,69,65,61          |   10 | 558,2183  |     12 |
| 16079 | 40304 | 50,47,45,38,29,25,1        | 71,56,53             |   10 | 652,1865  |     12 |
| 16103 | 40304 | 50,47,45,38,29,25,1        | 71,56,53             |   10 | 652,4667  |     10 |
| 33633 | 40622 | 44,32,27,23,20             | 79,72,71,63,62       |   10 | 1490,1884 |     11 |
| 33640 | 40622 | 44,32,27,23,20             | 79,72,71,63,62       |   10 | 1490,2996 |     10 |
| 24158 | 40777 | 38,22,15,14,12             | 76,66,63,57,51       |   10 | 1020,1893 |     11 |
| 24167 | 40777 | 38,22,15,14,12             | 76,66,63,57,51       |   10 | 1020,2963 |     12 |
|  5981 | 43323 | 49,45,44,31,30,8,7,4       | 67,55                |   10 | 234,2051  |     11 |
|  5993 | 43323 | 49,45,44,31,30,8,7,4       | 67,55                |   10 | 234,4517  |     10 |
| 43789 | 43798 | 48,43,30,17,11             | 79,71,65,64,62       |   10 | 2081,2669 |     11 |
|  5125 | 44195 | 44,34,28,22,9,4,3          | 65,60,54             |   10 | 201,2106  |     10 |
|  5129 | 44195 | 44,34,28,22,9,4,3          | 65,60,54             |   10 | 201,3141  |     11 |
| 45566 | 45572 | 42,2,1                     | 79,69,64,61,59,55,53 |   10 | 2198,2990 |     11 |
| 15922 | 47445 | 47,36,34,31,28,22,18,12    | 70,67                |   10 | 646,2326  |     11 |
| 15930 | 47445 | 47,36,34,31,28,22,18,12    | 70,67                |   10 | 646,4045  |     11 |
| 10354 | 48114 | 47,44,39,31,26,7,6,4       | 69,63                |   10 | 411,2373  |     11 |
| 10355 | 48114 | 47,44,39,31,26,7,6,4       | 69,63                |   10 | 411,2401  |     12 |
| 39629 | 50383 | 47,45,27,22,10             | 76,73,71,70,55       |   10 | 1826,2536 |     11 |
| 39646 | 50383 | 47,45,27,22,10             | 76,73,71,70,55       |   10 | 1826,3942 |     12 |
| 51445 | 51446 | 49,45,39,19,14,8,6         | 75,68,66             |   10 | 2620,3858 |     10 |
| 12613 | 51561 | 44,38,32,23,3              | 72,69,68,55,51       |   10 | 504,2630  |     11 |
| 12619 | 51561 | 44,38,32,23,3              | 72,69,68,55,51       |   10 | 504,3808  |     11 |
| 25817 | 51707 | 46,38,25                   | 78,73,71,68,65,62,60 |   10 | 1098,2640 |     13 |
| 25821 | 51707 | 46,38,25                   | 78,73,71,68,65,62,60 |   10 | 1098,2895 |     11 |
| 43789 | 52085 | 48,43,30,17,11             | 79,71,65,64,62       |   10 | 2081,2669 |     11 |
| 43798 | 52085 | 48,43,30,17,11             | 79,71,65,64,62       |   10 | 2081,3604 |     12 |
| 19543 | 52772 | 47,27,26,25,23,2           | 65,61,55,53          |   10 | 805,2727  |     12 |
| 19544 | 52772 | 47,27,26,25,23,2           | 65,61,55,53          |   10 | 805,2876  |     12 |
| 15953 | 53141 | 47,44,32,28,12,9           | 79,77,72,54          |   10 | 647,2758  |     13 |
| 15958 | 53141 | 47,44,32,28,12,9           | 79,77,72,54          |   10 | 647,3163  |     10 |
| 22784 | 53352 | 50,45,42,40,33,17,13,4,3   | 54                   |   10 | 956,2774  |     12 |
| 22790 | 53352 | 50,45,42,40,33,17,13,4,3   | 54                   |   10 | 956,3735  |     12 |
| 14754 | 53823 | 43,35,33,28,17             | 76,71,70,62,60       |   10 | 595,2814  |     12 |
| 14767 | 53823 | 43,35,33,28,17             | 76,71,70,62,60       |   10 | 595,4277  |     12 |
| 15864 | 54901 | 50,48,42,38,37,25,8,6      | 67,56                |   10 | 643,2912  |     11 |
| 15869 | 54901 | 50,48,42,38,37,25,8,6      | 67,56                |   10 | 643,4177  |     11 |
| 31451 | 55268 | 50,30,19,17,15,6,5,3       | 62,51                |   10 | 1375,2945 |     11 |
| 31459 | 55268 | 50,30,19,17,15,6,5,3       | 62,51                |   10 | 1375,4429 |     11 |
| 11846 | 55646 | 46,37,36,22,10             | 78,74,64,59,54       |   10 | 472,2981  |     13 |
| 11847 | 55646 | 46,37,36,22,10             | 78,74,64,59,54       |   10 | 472,3010  |     10 |
| 45566 | 55738 | 42,2,1                     | 79,69,64,61,59,55,53 |   10 | 2198,2990 |     11 |
| 45572 | 55738 | 42,2,1                     | 79,69,64,61,59,55,53 |   10 | 2198,3396 |     11 |
| 55855 | 55856 | 50,46,39,38,24,23,22,9,7   | 52                   |   10 | 3002,3332 |     10 |
| 56552 | 56555 | 45,39,31,29,14,7           | 79,68,67,59          |   10 | 3070,3505 |     11 |
| 27679 | 57409 | 45,35,33,32,22,21,14       | 72,64,60             |   10 | 1185,3159 |     10 |
| 27681 | 57409 | 45,35,33,32,22,21,14       | 72,64,60             |   10 | 1185,3710 |     10 |
| 57874 | 57876 | 44,32,31,24,22,7,5,1       | 60,53                |   10 | 3210,3422 |     13 |
| 31686 | 58727 | 37,29,21,8,7,5,3           | 78,74,67             |   10 | 1387,3294 |     11 |
| 31691 | 58727 | 37,29,21,8,7,5,3           | 78,74,67             |   10 | 1387,4588 |     12 |
| 59088 | 59089 | 24,23,22,20,17,11,9,7,5,3  |                      |   10 | 3332,3333 |     11 |
| 15306 | 59090 | 50,38,24,23,22,17,11,7,5   | 52                   |   10 | 620,3332  |     12 |
| 15307 | 59090 | 50,38,24,23,22,17,11,7,5   | 52                   |   10 | 620,3338  |     10 |
| 55855 | 59090 | 50,46,39,38,24,23,22,9,7   | 52                   |   10 | 3002,3332 |     10 |
| 55856 | 59090 | 50,46,39,38,24,23,22,9,7   | 52                   |   10 | 3002,3338 |     11 |
| 59088 | 59090 | 24,23,22,20,17,11,9,7,5,3  | 63                   |   11 | 3332,3333 |     11 |
| 59089 | 59090 | 24,23,22,20,17,11,9,7,5,3  |                      |   10 | 3332,3334 |     10 |
| 59088 | 59099 | 24,23,22,20,17,11,9,7,5,3  |                      |   10 | 3332,3333 |     11 |
| 59089 | 59099 | 24,23,22,20,17,11,9,7,5,3  |                      |   10 | 3332,3334 |     10 |
| 59090 | 59099 | 24,23,22,20,17,11,9,7,5,3  |                      |   10 | 3332,3338 |     17 |
| 59088 | 59100 | 24,23,22,20,17,11,9,7,5,3  | 63                   |   11 | 3332,3333 |     11 |
| 59089 | 59100 | 24,23,22,20,17,11,9,7,5,3  |                      |   10 | 3332,3334 |     10 |
| 59090 | 59100 | 24,23,22,20,17,11,9,7,5,3  | 63                   |   11 | 3332,3338 |     17 |
| 59099 | 59100 | 24,23,22,20,17,11,9,7,5,3  |                      |   10 | 3333,3334 |     10 |
| 59088 | 59103 | 24,23,22,20,17,11,9,7,5,3  |                      |   10 | 3332,3333 |     11 |
| 59089 | 59103 | 24,23,22,20,17,11,9,7,5,3  |                      |   10 | 3332,3334 |     10 |
| 59090 | 59103 | 24,23,22,20,17,11,9,7,5,3  |                      |   10 | 3332,3338 |     17 |
| 59099 | 59103 | 24,23,22,20,17,11,9,7,5,3  |                      |   10 | 3333,3334 |     10 |
| 59100 | 59103 | 24,23,22,20,17,11,9,7,5,3  |                      |   10 | 3333,3338 |     11 |
| 59110 | 59111 | 12,11,10,9,8,7,6,5,4,3,2,1 |                      |   12 | 3335,3336 |     13 |
| 59110 | 59119 | 12,11,10,9,8,7,6,5,4,3,2,1 |                      |   12 | 3335,3336 |     13 |
| 59111 | 59119 | 12,11,10,9,8,7,6,5,4,3,2,1 |                      |   12 | 3335,3337 |     12 |
| 57874 | 59863 | 44,32,31,24,22,7,5,1       | 60,53                |   10 | 3210,3422 |     13 |
| 57876 | 59863 | 44,32,31,24,22,7,5,1       | 60,53                |   10 | 3210,3511 |     11 |
|  4006 | 59974 | 49,34,27,19                | 72,69,67,56,54,52    |   10 | 155,3435  |     12 |
|  4012 | 59974 | 49,34,27,19                | 72,69,67,56,54,52    |   10 | 155,3880  |     12 |
| 60007 | 60016 | 44,32,27,22,17,11          | 67,65,62,56          |   10 | 3439,3548 |     12 |
| 56552 | 60542 | 45,39,31,29,14,7           | 79,68,67,59          |   10 | 3070,3505 |     11 |
| 56555 | 60542 | 45,39,31,29,14,7           | 79,68,67,59          |   10 | 3070,3807 |     12 |
| 12872 | 60576 | 35,31,16,7                 | 77,72,64,62,61,55    |   10 | 515,3509  |     10 |
| 12874 | 60576 | 35,31,16,7                 | 77,72,64,62,61,55    |   10 | 515,4071  |     11 |
| 60007 | 60889 | 44,32,27,22,17,11          | 67,65,62,56          |   10 | 3439,3548 |     12 |
| 60016 | 60889 | 44,32,27,22,17,11          | 67,65,62,56          |   10 | 3439,4985 |     10 |
| 60909 | 60911 | 42,28,26,20,9,6,4          | 67,65,63             |   10 | 3552,3725 |     11 |
| 60909 | 62184 | 42,28,26,20,9,6,4          | 67,65,63             |   10 | 3552,3725 |     11 |
| 60911 | 62184 | 42,28,26,20,9,6,4          | 67,65,63             |   10 | 3552,3881 |     11 |
| 63024 | 63025 | 41,28,25,24,8,7            | 70,61,58,55          |   10 | 3846,4322 |     11 |
| 51445 | 63088 | 49,45,39,19,14,8,6         | 75,68,66             |   10 | 2620,3858 |     10 |
| 51446 | 63088 | 49,45,39,19,14,8,6         | 75,68,66             |   10 | 2620,4341 |     12 |
| 18231 | 63540 | 39,34,20,13,10,9           | 77,69,63,51          |   10 | 746,3936  |     11 |
| 18239 | 63540 | 39,34,20,13,10,9           | 77,69,63,51          |   10 | 746,4955  |     12 |
| 28564 | 64071 | 43,39,38,28,20,10          | 79,67,63,52          |   10 | 1228,4038 |     10 |
| 28571 | 64071 | 43,39,38,28,20,10          | 79,67,63,52          |   10 | 1228,4955 |     11 |
| 20244 | 64637 | 40,32,30,29,27,10,6        | 72,63,51             |   10 | 838,4166  |     12 |
| 20246 | 64637 | 40,32,30,29,27,10,6        | 72,63,51             |   10 | 838,4276  |     11 |
|  3436 | 64687 | 45,43,32,29,23,13          | 78,77,75,63          |   10 | 133,4178  |     11 |
|  3440 | 64687 | 45,43,32,29,23,13          | 78,77,75,63          |   10 | 133,4943  |     13 |
| 63024 | 65248 | 41,28,25,24,8,7            | 70,61,58,55          |   10 | 3846,4322 |     11 |
| 63025 | 65248 | 41,28,25,24,8,7            | 70,61,58,55          |   10 | 3846,4612 |     11 |
+-------+-------+----------------------------+----------------------+------+-----------+--------+


...
Рейтинг: 0 / 0
10.02.2021, 12:36
    #40043950
miltorg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
6 часов считает. Как оптимизировать?
miltorg,

А. Тут 2-я срока идёт последовательно - значит - всё верно.
...
Рейтинг: 0 / 0
10.02.2021, 13:26
    #40043971
__Avenger__
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
6 часов считает. Как оптимизировать?
miltorg
6 часов считает. Как оптимизировать?

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
CREATE TABLE t30 

select t20.id as id1,  t21.id as id2,

MAKE_SET (t20.str_bit1 & t21.str_bit1,
50,49,48,47,46,45,44,43,42,41,40,39,38,37,36,35,34,33,32,
31,30,29,28,27,26,25,24,23,22,21,20,19,18,17,16,15,14,13,12,11,10,9,8,7,6,5,4,3,2,1) as u1,

MAKE_SET (t20.str_bit2 & t21.str_bit2,
99,98,97,96,95,94,93,92,91,90,89,88,87,86,85,84,83,82,81,80,79,78,77,76,75,74,73,72,71,
70,69,68,67,66,65,64,63,62,61,60,59,58,57,56,55,54,53,52,51) as u,

BIT_COUNT(t20.str_bit1 & t21.str_bit1)+BIT_COUNT(t20.str_bit2 & t21.str_bit2) as XXX,

t20.idold, t20.XXX as XXXold

from t20 join t20 as t21
where  t20.id<t21.id
AND BIT_COUNT(t20.str_bit1 & t21.str_bit1)+BIT_COUNT(t20.str_bit2 & t21.str_bit2) >= 10



А Так:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
select t20.id as id1,  t21.id as id2,

MAKE_SET (t20.str_bit1 & t21.str_bit1,
50,49,48,47,46,45,44,43,42,41,40,39,38,37,36,35,34,33,32,
31,30,29,28,27,26,25,24,23,22,21,20,19,18,17,16,15,14,13,12,11,10,9,8,7,6,5,4,3,2,1) as u1,

MAKE_SET (t20.str_bit2 & t21.str_bit2,
99,98,97,96,95,94,93,92,91,90,89,88,87,86,85,84,83,82,81,80,79,78,77,76,75,74,73,72,71,
70,69,68,67,66,65,64,63,62,61,60,59,58,57,56,55,54,53,52,51) as u,

BIT_COUNT(t20.str_bit1 & t21.str_bit1)+BIT_COUNT(t20.str_bit2 & t21.str_bit2) as XXX,

t20.idold, t20.XXX as XXXold

from t20 join t20 as t21 ON t20.id<t21.id
where  BIT_COUNT(t20.str_bit1 & t21.str_bit1)+BIT_COUNT(t20.str_bit2 & t21.str_bit2) >= 10

?
...
Рейтинг: 0 / 0
10.02.2021, 13:53
    #40043984
miltorg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
6 часов считает. Как оптимизировать?
__Avenger__,

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
mysql> CREATE TABLE t34 
    -> 
    -> select t20.id as id1,  t21.id as id2,
    -> 
    -> MAKE_SET (t20.str_bit1 & t21.str_bit1,
    -> 50,49,48,47,46,45,44,43,42,41,40,39,38,37,36,35,34,33,32,
    -> 31,30,29,28,27,26,25,24,23,22,21,20,19,18,17,16,15,14,13,12,11,10,9,8,7,6,5,4,3,2,1) as u1,
    -> 
    -> MAKE_SET (t20.str_bit2 & t21.str_bit2,
    -> 99,98,97,96,95,94,93,92,91,90,89,88,87,86,85,84,83,82,81,80,79,78,77,76,75,74,73,72,71,
    -> 70,69,68,67,66,65,64,63,62,61,60,59,58,57,56,55,54,53,52,51) as u,
    -> 
    -> BIT_COUNT(t20.str_bit1 & t21.str_bit1)+BIT_COUNT(t20.str_bit2 & t21.str_bit2) as XXX,
    -> 
    -> t20.idold, t20.XXX as XXXold
    -> 
    -> from t20 join t20 as t21
    -> where  t20.id<t21.id
    -> AND BIT_COUNT(t20.str_bit1 & t21.str_bit1)+BIT_COUNT(t20.str_bit2 & t21.str_bit2) >= 10
    -> 
    -> limit 2;
Query OK, 2 rows affected (26.44 sec)
Records: 2  Duplicates: 0  Warnings: 0
...
Рейтинг: 0 / 0
10.02.2021, 13:56
    #40043988
miltorg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
6 часов считает. Как оптимизировать?
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
mysql> CREATE TABLE t35 
    -> 
    -> select t20.id as id1,  t21.id as id2,
    -> 
    -> MAKE_SET (t20.str_bit1 & t21.str_bit1,
    -> 50,49,48,47,46,45,44,43,42,41,40,39,38,37,36,35,34,33,32,
    -> 31,30,29,28,27,26,25,24,23,22,21,20,19,18,17,16,15,14,13,12,11,10,9,8,7,6,5,4,3,2,1) as u1,
    -> 
    -> MAKE_SET (t20.str_bit2 & t21.str_bit2,
    -> 99,98,97,96,95,94,93,92,91,90,89,88,87,86,85,84,83,82,81,80,79,78,77,76,75,74,73,72,71,
    -> 70,69,68,67,66,65,64,63,62,61,60,59,58,57,56,55,54,53,52,51) as u,
    -> 
    -> BIT_COUNT(t20.str_bit1 & t21.str_bit1)+BIT_COUNT(t20.str_bit2 & t21.str_bit2) as XXX,
    -> 
    -> t20.idold, t20.XXX as XXXold
    -> 
    -> from t20 join t20 as t21 ON t20.id<t21.id
    -> where  BIT_COUNT(t20.str_bit1 & t21.str_bit1)+BIT_COUNT(t20.str_bit2 & t21.str_bit2) >= 10
    -> 
    -> limit 2;
Query OK, 2 rows affected (25.49 sec)
Records: 2  Duplicates: 0  Warnings: 0
...
Рейтинг: 0 / 0
10.02.2021, 13:57
    #40043990
miltorg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
6 часов считает. Как оптимизировать?
26 и 25 секунд
...
Рейтинг: 0 / 0
10.02.2021, 14:14
    #40044006
miltorg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
6 часов считает. Как оптимизировать?
miltorg,

Если не писать в новую таблицу - сокращение идёт на до 10 сек.
Но мне нужна таблица.
...
Рейтинг: 0 / 0
10.02.2021, 14:40
    #40044028
Leonid Kudryavtsev
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
6 часов считает. Как оптимизировать?
crutchmaster
miltorg,

Шо, опять?

+

ПравилаНе рекомендуется:
...
Создавать несколько топиков с одинаковым вопросом.
...
Рейтинг: 0 / 0
10.02.2021, 19:19
    #40044141
вадя
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
6 часов считает. Как оптимизировать?
miltorg
Но мне нужна таблица.
так сделай таблицу inmemory
...
Рейтинг: 0 / 0
11.02.2021, 11:45
    #40044367
miltorg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
6 часов считает. Как оптимизировать?
miltorg,

Вчера - 25. Сегодня - тот же запрос - 5 сек. Так-так?!!!
...
Рейтинг: 0 / 0
11.02.2021, 11:46
    #40044370
miltorg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
6 часов считает. Как оптимизировать?
miltorg,

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
mysql> CREATE TABLE t34 
    -> 
    -> select t20.id as id1,  t21.id as id2,
    -> 
    -> MAKE_SET (t20.str_bit1 & t21.str_bit1,
    -> 50,49,48,47,46,45,44,43,42,41,40,39,38,37,36,35,34,33,32,
    -> 31,30,29,28,27,26,25,24,23,22,21,20,19,18,17,16,15,14,13,12,11,10,9,8,7,6,5,4,3,2,1) as u1,
    -> 
    -> MAKE_SET (t20.str_bit2 & t21.str_bit2,
    -> 99,98,97,96,95,94,93,92,91,90,89,88,87,86,85,84,83,82,81,80,79,78,77,76,75,74,73,72,71,
    -> 70,69,68,67,66,65,64,63,62,61,60,59,58,57,56,55,54,53,52,51) as u,
    -> 
    -> BIT_COUNT(t20.str_bit1 & t21.str_bit1)+BIT_COUNT(t20.str_bit2 & t21.str_bit2) as XXX,
    -> 
    -> t20.idold, t20.XXX as XXXold
    -> 
    -> from t20 join t20 as t21
    -> where  t20.id<t21.id
    -> AND BIT_COUNT(t20.str_bit1 & t21.str_bit1)+BIT_COUNT(t20.str_bit2 & t21.str_bit2) >= 10
    -> 
    -> limit 2;
Query OK, 2 rows affected (5.10 sec)
Records: 2  Duplicates: 0  Warnings: 0

...
Рейтинг: 0 / 0
11.02.2021, 11:57
    #40044379
miltorg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
6 часов считает. Как оптимизировать?
вадя,

Что-то не получилось - ошибки выдаёт:

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
DROP TABLE IF EXISTS t34;
CREATE TABLE t34(

select t20.id as id1,  t21.id as id2,

MAKE_SET (t20.str_bit1 & t21.str_bit1,
50,49,48,47,46,45,44,43,42,41,40,39,38,37,36,35,34,33,32,
31,30,29,28,27,26,25,24,23,22,21,20,19,18,17,16,15,14,13,12,11,10,9,8,7,6,5,4,3,2,1) as u1,

MAKE_SET (t20.str_bit2 & t21.str_bit2,
99,98,97,96,95,94,93,92,91,90,89,88,87,86,85,84,83,82,81,80,79,78,77,76,75,74,73,72,71,
70,69,68,67,66,65,64,63,62,61,60,59,58,57,56,55,54,53,52,51) as u,

BIT_COUNT(t20.str_bit1 & t21.str_bit1)+BIT_COUNT(t20.str_bit2 & t21.str_bit2) as XXX,

t20.idold, t20.XXX as XXXold

from t20 join t20 as t21
where  t20.id<t21.id
AND BIT_COUNT(t20.str_bit1 & t21.str_bit1)+BIT_COUNT(t20.str_bit2 & t21.str_bit2) >= 10

limit 10 ) ENGINE=MEMORY;
...
Рейтинг: 0 / 0
11.02.2021, 21:10
    #40044633
вадя
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
6 часов считает. Как оптимизировать?
miltorg,

и какую из 1000 ?
...
Рейтинг: 0 / 0
11.02.2021, 21:53
    #40044643
miltorg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
6 часов считает. Как оптимизировать?
вадя,

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
mysql> DROP TABLE IF EXISTS t34;
Query OK, 0 rows affected, 1 warning (0.14 sec)

mysql> CREATE TABLE t34(
    -> 
    -> select t20.id as id1,  t21.id as id2,
    -> 
    -> MAKE_SET (t20.str_bit1 & t21.str_bit1,
    -> 50,49,48,47,46,45,44,43,42,41,40,39,38,37,36,35,34,33,32,
    -> 31,30,29,28,27,26,25,24,23,22,21,20,19,18,17,16,15,14,13,12,11,10,9,8,7,6,5,4,3,2,1) as u1,
    -> 
    -> MAKE_SET (t20.str_bit2 & t21.str_bit2,
    -> 99,98,97,96,95,94,93,92,91,90,89,88,87,86,85,84,83,82,81,80,79,78,77,76,75,74,73,72,71,
    -> 70,69,68,67,66,65,64,63,62,61,60,59,58,57,56,55,54,53,52,51) as u,
    -> 
    -> BIT_COUNT(t20.str_bit1 & t21.str_bit1)+BIT_COUNT(t20.str_bit2 & t21.str_bit2) as XXX,
    -> 
    -> t20.idold, t20.XXX as XXXold
    -> 
    -> from t20 join t20 as t21
    -> where  t20.id<t21.id
    -> AND BIT_COUNT(t20.str_bit1 & t21.str_bit1)+BIT_COUNT(t20.str_bit2 & t21.str_bit2) >= 10
    -> 
    -> limit 10 ) ENGINE=MEMORY;
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'ENGINE=MEMORY' at line 21

...
Рейтинг: 0 / 0
12.02.2021, 13:50
    #40044809
вадя
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
6 часов считает. Как оптимизировать?
надо читать мануал по созданию таблиц. и надо в настройках указать объем памяти разрешённый для таких таблиц
...
Рейтинг: 0 / 0
12.02.2021, 14:58
    #40044852
miksoft
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
6 часов считает. Как оптимизировать?
Нет такого синтаксиса - CREATE TABLE t34 (SELECT ...
По крайней мере, со скобкой.
...
Рейтинг: 0 / 0
12.02.2021, 17:56
    #40044915
вадя
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
6 часов считает. Как оптимизировать?
miksoft
Нет такого синтаксиса - CREATE TABLE t34 (SELECT ...
По крайней мере, со скобкой.
это правильно

miltorg,

скачай https://www.devart.com/ru/dbforge/mysql/studio/download.html
и пробуй , для обучения выше крыши
...
Рейтинг: 0 / 0
12.02.2021, 20:17
    #40044955
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
6 часов считает. Как оптимизировать?
По синтаксису вроде все верно. Как тут https://dev.mysql.com/doc/refman/8.0/en/memory-storage-engine.html

Надо посмотреть версию MySQL.

Код: sql
1.
select version()



Возможно Дрон поставил древнюю. И обновится если что до восьмёрки.

И я-бы попробовал еще до создания таблички установить например 100 мегабайт.

Код: sql
1.
SET max_heap_table_size = 1024*1024 * 100;
...
Рейтинг: 0 / 0
12.02.2021, 20:26
    #40044960
Alex_Ustinov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
6 часов считает. Как оптимизировать?
нуууу ребята...)
ексампле с той страницы -
Код: sql
1.
2.
3.
mysql> CREATE TABLE test ENGINE=MEMORY
           SELECT ip,SUM(downloads) AS down
           FROM log_table GROUP BY ip;
...
Рейтинг: 0 / 0
Форумы / MySQL [игнор отключен] [закрыт для гостей] / 6 часов считает. Как оптимизировать? / 25 сообщений из 35, страница 1 из 2
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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