Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: цикл и ограничение запроса
 
 автор: Medulla   (19.10.2007 в 13:21)   письмо автору
 
 


if ($_GET['id_page']==1) 
    {
$title='Заголовок 1';
$limit='where not date_z is null';
         }  

 if ($_GET['id_page']==2)
   
 {
$title='Заголовок 2';
$limit='where date_z is null';
        }

 if ($_GET['id_page']==3) //[условие1]
   
{
       $title='Заголовок3';
      $limit='  ';// ? 
       }

if ($_GET['day']==0) $limday='   '; //[условие2]
if ($_GET['day']=="today") $limday='convert(varchar(10), getdate()-1,104)=convert(varchar(10), date,104)';
if ($_GET['day']=="yesterday") $limday='convert(varchar(10), getdate()-2,104)=convert(varchar(10), date,104)';
if ($_GET['day']=="thismonth") $limday='convert(varchar(7), getdate(),102)=convert(varchar(7), date,102)';
if ($_GET['day']=="monthbefore") $limday='convert(varchar(7), dateadd(mm,datediff(mm,0,getdate())-1,0),102)=convert(varchar(7), date,102)';
if ($_GET['day']=="thisyear") $limday='convert(varchar(4), getdate(),102)=convert(varchar(4), date,102)';
if ($_GET['day']=="yearbefore") $limday='convert(varchar(4), dateadd(yy,datediff(yy,0,getdate())-1,0),102)=convert(varchar(4), date,102)';


$sql="SELECT name, count(id) as kol, sum(cost) as amount  from table1  $limit and $limday group by name $orderstr";// $orderstr- сортировка


Если выполняется [условие1] или [условие2] запрос не выполняется из-за and(‘ ‘ and ‘ ‘ ).
Как можно исправить циклы?[

   
 
 автор: tricket   (19.10.2007 в 15:07)   письмо автору
 
   для: Medulla   (19.10.2007 в 13:21)
 

а где ты тут вообще видешь цикл?
я думал циклы задаются только операторами while, do-while, foreach, for...

   
 
 автор: Medulla   (19.10.2007 в 15:14)   письмо автору
 
   для: tricket   (19.10.2007 в 15:07)
 

совсем заработалась)
цикл был выше
условие конечно.

   
 
 автор: sim5   (19.10.2007 в 18:21)   письмо автору
 
   для: Medulla   (19.10.2007 в 15:14)
 

>Как можно исправить
Не указывать and взаимоисключащие условия.

   
 
 автор: hell_riser   (19.10.2007 в 19:41)   письмо автору
 
   для: Medulla   (19.10.2007 в 13:21)
 

Странный запрос

<?php
$sql
="SELECT name, count(id) as kol, sum(cost) as amount  from table1  $limit and $limday group by name $orderstr";// $orderstr- сортировка
?>

может быть так

<?php
$sql
="SELECT name, count(id) as kol, sum(cost) as amount  
           FROM table1  
           WHERE column1="
.$limit."
           AND column2="
.$limday."
           GROUP BY name 
$orderstr";// $orderstr- сортировка
?>

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования