Добрый день, прошу помощи в следующем вопросе, имеется две таблицы ranges_of_values_for_tasks и matrix_table_of_values_by_task1 следующего содержания:
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
SELECT* FROM ranges_of_values_for_tasks;
+----+---------------------+--------------------+--------------------+--------+---------------------+---------------------+
| id | tasks | lower_limit_number | upper_limit_number | factor | lower_limit_percent | upper_limit_percent |
+----+---------------------+--------------------+--------------------+--------+---------------------+---------------------+
| 1 | Задача №1 | 0.00 | 100000.00 | 0.0 | NULL | NULL |
| 2 | Задача №1 | 100000.00 | 1000000.00 | 1.0 | NULL | NULL |
| 3 | Задача №1 | 1000000.00 | 2000000.00 | 1.5 | NULL | NULL |
| 5 | Задача №1 | 2000000.00 | NULL | 2.0 | NULL | NULL |
| 6 | Задача №2-3 | 0.00 | 6399999.00 | 0.0 | 0 | 80 |
| 7 | Задача №2-3 | 6400000.00 | 7999999.00 | 0.5 | 80 | 100 |
| 8 | Задача №2-3 | 8000000.00 | 9599999.00 | 1.2 | 100 | 120 |
| 9 | Задача №2-3 | 9600000.00 | 11199999.00 | 1.4 | 120 | 140 |
| 10 | Задача №2-3 | 11200000.00 | 12799999.00 | 1.6 | 140 | 160 |
| 12 | Задача №2-3 | 12800000.00 | NULL | 2.0 | 160 | NULL |
+----+---------------------+--------------------+--------------------+--------+---------------------+---------------------+
1.
2.
3.
4.
5.
6.
7.
8.
9.
SELECT * FROM matrix_table_of_values_by_task1;
+----+------------+-----------+-----------------+--------------------------------+------------------------------------+
| id | date | customer | contract_amount | date_of_conclusion_of_contract | user_updater |
+----+------------+-----------+-----------------+--------------------------------+------------------------------------+
| 1 | 2015-03-07 | asdfasd | 143 | 2015-03-01 | admin |
| 2 | 2015-03-01 | adfasdfas | 12312424 | 2015-03-19 | Директор(условный) |
| 3 | 2015-03-08 | asasdaasf | 134 | 2015-03-11 | admin |
| 5 | 2013-03-01 | 123 | 123 | 2013-03-08 | admin |
+----+------------+-----------+-----------------+--------------------------------+------------------------------------+
Необходимо сравнить значения столбца contract_amount и на основании результатов сравнения отображать соответствующее значение столбца factor, т.е. если
1.
(SELECT lower_limit_number FROM ranges_of_values_for_tasks WHERE id = 1) >= matrix_table_of_values_by_task1.contract_amount <= (SELECT upper_limit_number FROM ranges_of_values_for_tasks WHERE id = 1)
то отображать
1.
(SELECT factor FROM ranges_of_values_for_tasks WHERE id = 1),
если нет, то сверять со следующей строкой и отображать
1.
(SELECT factor FROM ranges_of_values_for_tasks WHERE id = 2)
и т.д.
Подскажите пожалуйста, каким образом можно составить подобный запрос?