За последние 24 часа нас посетили 20953 программиста и 1136 роботов. Сейчас ищут 660 программистов ...

Помогите с запросом SQL в PHP коде

Тема в разделе "PHP для новичков", создана пользователем kretsman, 13 дек 2018.

Метки:
  1. kretsman

    kretsman Новичок

    С нами с:
    7 сен 2018
    Сообщения:
    80
    Симпатии:
    0
    Имею запрос:
    "SELECT LAST(RecPart) as 'Тип оборудования',
    sum(LocCur = 'ready') as 'Готовое',
    sum(LocCur = 'stock') as 'Ремонтный фонд',
    sum(LocCur = 'scrap') as 'Всего отдефектовано'
    FROM DataWO WHERE PceType=61 GROUP BY RecPart"
    Получается вот это:
    upload_2018-12-13_16-34-51.png
    Теперь вопросы:
    1) Как сделать так чтобы выводило целые числа без знаком после запятой?
    2) Почему выводит отрицательные числа?
    3) как выводить результат по центру ячейки?
    4) как избавить от ' в начала и конце наименования столбца?
    5) Как наименование столбца размещать не в одну строчку если оно шире содержимого ячеек?
     
  2. Artur_hopf

    Artur_hopf Активный пользователь

    С нами с:
    7 май 2018
    Сообщения:
    2.266
    Симпатии:
    405
    Судя по тому что у тебя или ноль или минус, у тебя там неправильно суммируется. А чтоб кавычек не было - убери их, as Тип оборудования...
     
  3. kretsman

    kretsman Новичок

    С нами с:
    7 сен 2018
    Сообщения:
    80
    Симпатии:
    0
    Когда 0 это норма. Отрицательное значение не норма. Так то числа правильные выдает. Если убираю ковычки от названия стобца из двух слов то выдает ошибку
     
  4. MouseZver

    MouseZver Суперстар

    С нами с:
    1 апр 2013
    Сообщения:
    7.734
    Симпатии:
    1.315
    Адрес:
    Лень
    структуру таблицы покажи
     
  5. kretsman

    kretsman Новичок

    С нами с:
    7 сен 2018
    Сообщения:
    80
    Симпатии:
    0
    upload_2018-12-13_17-31-11.png
    По сути мне надо посчитать сгруппированное по названию оборудование
     
  6. Sail

    Sail Старожил

    С нами с:
    1 ноя 2016
    Сообщения:
    1.591
    Симпатии:
    360
    Используйте апостроф (`) вместо кавычки
    --- Добавлено ---
    Для форматирования чисел при выводе можно использовать разные функции. Например, number_format(),
    --- Добавлено ---
    Для вывода результата по центру ячейки достаточно к тегу <table> добавить атрибут style="text-align: center;"
    --- Добавлено ---
    По поводу вопроса №5 - задайте, например, ширину ячейки при формировании первой строки.
    Хотя остаются разные варианты. CSS классы table... от bootstrap, задать ширину таблицы в 100% и прочие.
     
  7. kretsman

    kretsman Новичок

    С нами с:
    7 сен 2018
    Сообщения:
    80
    Симпатии:
    0
    Вы немного не поняли, вот полный код:
    PHP:
    1. $connect = odbc_connect("wobdv120", "", "");
    2. $q = "SELECT RecPart as 'Тип оборудования', (sum(LocCur = 'ready')+sum(LocCur = 'stock')+sum(LocCur = 'scrap')) as Всего,
    3. sum(LocCur = 'ready') as Готовое, sum(LocCur = 'stock') as 'Ремонтный фонд', sum(LocCur = 'scrap') as 'Всего отдефектовано'
    4. FROM DataWO  WHERE PceType=61 GROUP BY RecPart";
    5. $result = odbc_prepare($connect,$q);
    6.  
    7. // Выполнить запрос и вывести результаты
    8. odbc_execute($result);
    9. odbc_result_all($result, "BGCOLOR='#E0ECF8' border=1");
    10.  
    11. // Закрыть соединение
    12. odbc_close($connect);
    13. echo $q;
    Там нет таблиц и вывод происходит не построчный. и так стоят ' а не ".
    Форматировать вывод цифр через функции тоже не получится
     
  8. Sail

    Sail Старожил

    С нами с:
    1 ноя 2016
    Сообщения:
    1.591
    Симпатии:
    360
    Имелся ввиду обратный апостроф :)
    Код (Text):
    1. select fieldname as `alias with spaces` from table
    Впрочем, у Вас msaccess... так что, похоже, не вариант.
     
    kretsman нравится это.
  9. kretsman

    kretsman Новичок

    С нами с:
    7 сен 2018
    Сообщения:
    80
    Симпатии:
    0
    С апострофом подошло, спасибо!