Просмотр сообщений

В этом разделе можно просмотреть все сообщения, сделанные этим пользователем.


Сообщения - strakhov

Страницы: [1]
1
Базы данных / запрос с двумя таблицами
« : 24 Декабря 2008, 16:02:06 »
в таблице tbldocs есть такие записи к примеру
id|lngDocType|lngDocNum|lndIdTipDocs
2|13             |1              |2
3|1               |1              |2
4|15             |1              |2
7|1               |4              |2
8|13             |6              |2

в таблице tblorderheaders такие
lngDocNum|....||||
1              |....||||
4              |....||||
6              |....||||
....

надо вывести записи из табл tblorderheaders только те у которых в таблице tbldocs последний lngDocType=\'1\'

тоесть он должен вывести только одну запись с номером lngDocNum=4

2
Базы данных / запрос с двумя таблицами
« : 24 Декабря 2008, 14:54:11 »
изменил работающий запрос из двух SELECT сверху.

понял в чем дело, задача усложняется тем что в таблице tbldocs всегда есть записи где lngDocType равен \'1\' поэтому выводит все записи, приходится брать последнюю запись из tbldocs и сравнивать равно ли lngDocType=\'1\' поскольку есть записи которые имееют lngDocType другие значения кроме 1

3
Базы данных / запрос с двумя таблицами
« : 24 Декабря 2008, 14:28:09 »
Если вывести в два SELECT так оно работает но он ходит по всей таблице tblorderheaders в цикле, а хотелось бы чтобы выбирались только нужные записи в одном совмещенном SELECT

$Query = "SELECT *  FROM tblorderheaders\'";
$result = mysql_db_query ($dbname, $Query, $Link);
while ($Row = mysql_fetch_array ($result))   {

$Query6 = "SELECT * FROM tbldocs where lndIdTipDocs=\'2\' and lngDocNum=\'$Row[lngDocNum]\'  order by lngDocID desc limit 1";
$result6 = mysql_db_query ($dbname, $Query6, $Link);
$Row6 = mysql_fetch_array ($result6);

if ($Row6[lngDocType]==\'1\') {echo $Row[lngDocNum];}

}

4
Базы данных / запрос с двумя таблицами
« : 24 Декабря 2008, 14:13:13 »
так?

$Query = "SELECT *  FROM tblorderheaders,tbldocs where tblorderheaders.lngOrderID=tbldocs.lngDocNum and tbldocs.lngDocType=\'1\' and tbldocs.lndIdTipDocs=\'2\' ";


тоже выводит весь список. не смотрит на условия отбора.

5
Базы данных / запрос с двумя таблицами
« : 24 Декабря 2008, 14:06:54 »
есть две таблицы

первая "tblorderheaders"
lngOrderID(номер заказа уникальный)|....|


вторая "tbldocs"
...|lngDocType(тип документа)|lngDocNum(номер заказа)|lndIdTipDocs|..

во вторую таблицу пишутся множество записей с  номерами заказов lngDocNum(номер заказа) (может быть много записей с одинаковым lngDocNum(номер заказа)) но с разными lngDocType(тип документа).

надо вывести данные из tblorderheaders с теми записями у которых одинаковый lngOrderID=lngDocNum и lngDocType=\'1\' и lndIdTipDocs=\'2\'

Мой запрос выводит все записи из tblorderheaders, т.е никак не реагирует на условия отбора

$Query = "SELECT *  FROM tblorderheaders LEFT JOIN  tbldocs ON tblorderheaders.lngOrderID=tbldocs.lngDocNum where tbldocs.lngDocType=\'1\' and tbldocs.lndIdTipDocs=\'2\' ";

6
PHP / Есть задачка по округлению чисел!
« : 17 Января 2008, 15:25:29 »
Округление должно происходить следующим образом:

если вес больше ровного значения (1  1,5  2  2,5....) на сумму до 200 грамм, то округляется в меньшую сторону, если больше – то в большую. Кроме начального значения, которое не может быть менее 0,5(шаг веса 0,5 кг.).
 
 
Пример:                            реальный вес 0,1 => 0,5
                                               реальный вес 0,6 => 0,5
                                               реальный вес 0,7 => 0,5
                                               реальный вес 0,75 => 1
                                               реальный вес 2,2 => 2
                                               реальный вес 2,25 => 2,5  и т.д.

Помогите решить задачу с помощью PHP.
Заранее спасибо.

Страницы: [1]