Мне нужно написать процедуру, которая будет работать с той же командой, но вам нужно будет изменить поле LIKE. Он начнется с «aa%», затем перейдите к «ab%» до «az%». то он начнет с «ba%», «bb%» и т. д. до «zz%». Я попытался запустить его в цикле, но не знаю, откуда взять письма.написать процедуру для прохождения всех букв
SELECT t1.colA, t2.colA, count(*)
FROM (SELECT colA FROM table WHERE colA LIKE "a[a-z]%") t1
JOIN table t2
ON t1.date = t2.date
GROUP BY t1.colA, t2.colA
HAVING count(*) > 10
INSERT INTO /tmp/[a[a-z]].csv
FIELDS TERMINATED BY ',' ENCLOSED BY '"'
LINES TERMINATED BY '\r\n'
После 26 итераций, что следующий будет
SELECT t1.colA, t2.colA, count(*)
FROM (SELECT colA FROM table WHERE colA LIKE "b[a-z]%") t1
JOIN table t2
ON t1.date = t2.date
GROUP BY t1.colA, t2.colA
HAVING count(*) > 10
INSERT INTO /tmp/[b[a-z]].csv
FIELDS TERMINATED BY ',' ENCLOSED BY '"'
LINES TERMINATED BY '\r\n'
Следующая будет
SELECT t1.colA, t2.colA, count(*)
FROM (SELECT colA FROM table WHERE colA LIKE "c[a-z]%") t1
JOIN table t2
ON t1.date = t2.date
GROUP BY t1.colA, t2.colA
HAVING count(*) > 10
INSERT INTO /tmp/[c[a-z]].csv
FIELDS TERMINATED BY ',' ENCLOSED BY '"'
LINES TERMINATED BY '\r\n'
и так далее, пока
SELECT t1.colA, t2.colA, count(*)
FROM (SELECT colA FROM table WHERE colA LIKE "z[a-z]%") t1
JOIN table t2
ON t1.date = t2.date
GROUP BY t1.colA, t2.colA
HAVING count(*) > 10
INSERT INTO /tmp/[z[a-z]].csv
FIELDS TERMINATED BY ',' ENCLOSED BY '"'
LINES TERMINATED BY '\r\n'
почему нет ', как "[A-Z] [A-Z]%"'? и 'GROUP BY left (ColA, 1), справа (слева (ColA, 2), 1)' – Horaciux
Я не уверен, что вы имеете в виду именно? – user2924127
добавьте образец данных и желаемый результат, и я покажу вам. – Horaciux