|
как можно построить запрос c пересчетом поля
|
|||
---|---|---|---|
#18+
Подскажите как можно построить запрос, чтобы провести выборку из базы и пересчет поля. Пример: Если поле valuta = $, то поле price ==price*31 SELECT price, valuta FROM `test` WHERE val = '$' … а дальше??? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.08.2003, 10:30 |
|
как можно построить запрос c пересчетом поля
|
|||
---|---|---|---|
#18+
Попробуй так: SELECT price, valuta, IF(valuta='usd',price*31, price) AS Zena FROM `test` ... |
|||
:
Нравится:
Не нравится:
|
|||
07.08.2003, 12:47 |
|
как можно построить запрос c пересчетом поля
|
|||
---|---|---|---|
#18+
SELECT IF(valuta='usd',price*31, price) AS Zena FROM `test` ... |
|||
:
Нравится:
Не нравится:
|
|||
07.08.2003, 12:48 |
|
как можно построить запрос c пересчетом поля
|
|||
---|---|---|---|
#18+
Как создать запрос если несколько значений для пересчета: Пример: Если поле valuta = $, то поле price ==price*31 а если valuta = £, то поле price ==price*50 ... |
|||
:
Нравится:
Не нравится:
|
|||
07.08.2003, 20:33 |
|
как можно построить запрос c пересчетом поля
|
|||
---|---|---|---|
#18+
Наверно - придется ещо одну таблицу заводить с курсами валют и джонить ее с таблицой цен. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2003, 09:59 |
|
как можно построить запрос c пересчетом поля
|
|||
---|---|---|---|
#18+
BigHarry - дело говорит. А так IF используй, или: Код: plaintext 1. 2. 3.
... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2003, 13:34 |
|
как можно построить запрос c пересчетом поля
|
|||
---|---|---|---|
#18+
Код: plaintext 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2003, 14:59 |
|
как можно построить запрос c пересчетом поля
|
|||
---|---|---|---|
#18+
Последний вариант самый подходящий, вот только как результату присвоить имя? ... |
|||
:
Нравится:
Не нравится:
|
|||
11.08.2003, 10:35 |
|
как можно построить запрос c пересчетом поля
|
|||
---|---|---|---|
#18+
Ага - и каждый раз, кады курс у валюты меняется - лезть в исходники и переписывать запрос, вместо того, что бы в таблицу валют прописать новый курс. http://www.mysql.com/doc/ru/Control_flow_functions.html ... |
|||
:
Нравится:
Не нравится:
|
|||
11.08.2003, 12:08 |
|
как можно построить запрос c пересчетом поля
|
|||
---|---|---|---|
#18+
Код: plaintext 1.
2 BigHarry: Какой вопрос - такой ответ. Способ можно подсказать, а дальше пусть автор решает как ему удобней. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.08.2003, 15:40 |
|
как можно построить запрос c пересчетом поля
|
|||
---|---|---|---|
#18+
Подскажите как правильно объединить 2-а запроса: Первый отвечает за конвертацию валюты в единое значение и производит поиск: $konv = mysql_query("SELECT id_tr, case valuta when '0' then price/$dkr when '2' then price*$ekd else price end as newf FROM ppp HAVING newf >= '$cena'"); Второй производит поиск названий фирмы если название задали: $select = "SELECT firma, price, id_tr"; $from = " FROM ppp, ttt"; $where = " WHERE ppp.id_tr=ttt.id_trp"; if ($firma != "") { $where .= " AND firma LIKE '%$firma%'";} else {$where .= "group by id_tr order by price } $res = mysql_query($select . $from . $where); etc.... ... |
|||
:
Нравится:
Не нравится:
|
|||
13.08.2003, 12:28 |
|
как можно построить запрос c пересчетом поля
|
|||
---|---|---|---|
#18+
Тема практически исчерпана, но есть еще один дедовский метод SELECT price*(31*(valuta = '$') + 50*(valuta = '£')) from test ... |
|||
:
Нравится:
Не нравится:
|
|||
15.08.2003, 21:25 |
|
|
start [/forum/topic.php?fid=47&msg=32233010&tid=1855854]: |
0ms |
get settings: |
7ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
67ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
46ms |
get tp. blocked users: |
1ms |
others: | 12ms |
total: | 157ms |
0 / 0 |