CREATE TABLE Table1
(`Cty_lst` varchar(9), `Cty_Rgn` varchar(3), `Criteria` varchar(3), `Total` int, `Sntmt` varchar(3))
;
INSERT INTO Table1
(`Cty_lst`, `Cty_Rgn`, `Criteria`, `Total`, `Sntmt`)
VALUES
('ALL', 'ALL', 'ALL', 3155, 'ALL'),
('Bangalore', 'ALL', 'ALL', 628, 'ALL'),
('Chennai', 'ALL', 'ALL', 337, 'ALL'),
('Delhi', 'ALL', 'ALL', 263, 'ALL'),
('Gurgaon', 'ALL', 'ALL', 282, 'ALL'),
('Hyderabad', 'ALL', 'ALL', 406, 'ALL'),
('Mumbai', 'ALL', 'ALL', 482, 'ALL'),
('Noida', 'ALL', 'ALL', 235, 'ALL'),
('Pune', 'ALL', 'ALL', 522, 'ALL')
;
select
t.*
, Total / @total * 100
from
Table1 t
, (select @total := (select Total from Table1 where Cty_lst = 'ALL' limit 1)) vars
| CTY_LST | CTY_RGN | CRITERIA | TOTAL | SNTMT | TOTAL / @TOTAL * 100 |
|-----------|---------|----------|-------|-------|----------------------|
| ALL | ALL | ALL | 3155 | ALL | 100 |
| Bangalore | ALL | ALL | 628 | ALL | 19.9049 |
| Chennai | ALL | ALL | 337 | ALL | 10.6815 |
| Delhi | ALL | ALL | 263 | ALL | 8.336 |
| Gurgaon | ALL | ALL | 282 | ALL | 8.9382 |
| Hyderabad | ALL | ALL | 406 | ALL | 12.8685 |
| Mumbai | ALL | ALL | 482 | ALL | 15.2773 |
| Noida | ALL | ALL | 235 | ALL | 7.4485 |
| Pune | ALL | ALL | 522 | ALL | 16.5452 |
- sqlfiddle http://sqlfiddle.com/#!2/725e1c/5/0