На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! информация о разделе
user posted imageДанный раздел предназначается исключительно для обсуждения вопросов использования языка запросов SQL. Обсуждение общих вопросов, связанных с тематикой баз данных - обсуждаем в разделе "Базы данных: общие вопросы". Убедительная просьба - соблюдать "Правила форума" и не пренебрегать "Правильным оформлением своих тем". Прежде, чем создавать тему, имеет смысл заглянуть в раздел "Базы данных: FAQ", возможно там уже есть ответ.

Модераторы: Akina
  
> Выбрать максимум , Как выбрать строку
    Как составить запрос чтобы выбрать строку, в которой значение ячейки максимально?

    По-другому. Таблица типа:

    a b c
    1 2 1
    3 1 1
    3 4 2

    Как составить запрос чтобы выбрать строку, где значение b максимально?
      Стандарт SQL поддерживает конструкцию MAX:

      CODE
      Select MAX(b) From MyTable


      Надеюсь MySQL поддерживает эту конструкцию тоже.
        Это чудесно, что он поддерживает такую функцию.
        Но из всей таблицы мне нужна не одна ячейка, а всего одна строка.

        Допустим `b` изначально UNIQUE.
        Ясно, что можно сделать что-то вроде:
        CODE
        SELECT `a`,`b`,`c` FROM `table` WHERE `b`=(
        SELECT MAX(`b`) FROM `table`
        )


        А как проще?
        Сообщение отредактировано: Tishaishii -
          CODE
          select top 1 * from Table
          Order by b desc


          Только не всеми диалектиами поддерживается top, но в любом случае первая строка будет то что надо
          Сообщение отредактировано: Vit -
            К сожалению, видимо, у меня не поддерживается...
            Есть ещё варианты?
              MySQL не поддерживает TOP, зато можно сделать так:
              SELECT * FROM table1 ORDER BY b DESC LIMIT 1
              Сообщение отредактировано: Alfa -
                QUOTE (Alfa @ 9.11.03, 17:33)
                MySQL не поддерживает TOP, зато можно сделать так:
                SELECT * FROM table1 ORDER BY id DESC LIMIT 1

                Хороший и удобный, кстати, выход wink.gif
                  Благодарю
                  0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
                  0 пользователей:


                  Рейтинг@Mail.ru
                  [ Script execution time: 0,0252 ]   [ 15 queries used ]   [ Generated: 27.04.24, 12:06 GMT ]