Page 4 of 5 FirstFirst 12345 LastLast
Results 31 to 40 of 42

Thread: Вопрос на засыпку

  1. #31
    Forum Regular реднек's Avatar
    Join Date
    Dec 2011
    Posts
    4,427

    Default Re: Вопрос на засыпку

    Quote Originally Posted by смешно View Post
    ок. the simplest and most logical answer ( not related to any database):


    select max(amount) from table A where amount != (select max(amount) from table A)

    this one also will work:

    select max(amount) from table A where amount < (select max(amount) from table A)
    Теперь буду знать как отвечать чтобы скипали телефонное. А то мурыжат почем зря.
    Стакан на треть пуст.

  2. #32
    Патриот смешно's Avatar
    Join Date
    Apr 2003
    Location
    Страна чудес
    Posts
    55,561

    Default Re: Вопрос на засыпку

    Quote Originally Posted by реднек View Post
    Теперь буду знать как отвечать чтобы скипали телефонное. А то мурыжат почем зря.
    им сразу задай этот вопрос. Лол
    4 main reasons why Boston is the best place to live:Red Sox (Baseball), Patriots (Football) World Champions
    Celtics the NBA (Basketball), Bruins Stanley Cup (Hockey)

  3. #33
    VIP MariLi's Avatar
    Join Date
    Nov 2011
    Location
    Terra baciata da Dio
    Posts
    20,534

    Default Re: Вопрос на засыпку


  4. #34
    ספרא וסייפא Alex5448's Avatar
    Join Date
    Jul 2007
    Location
    ישראל בנשמה
    Posts
    63,911

    Default Re: Вопрос на засыпку

    Хинди надо учить, не сиквел.
    המעז מנצח
    كل كلب وله يومه

  5. #35
    Свинохрюндель ETTY's Avatar
    Join Date
    Oct 2006
    Location
    д. Грязюкино
    Posts
    6,550

    Default Re: Вопрос на засыпку

    Quote Originally Posted by смешно View Post
    ок. the simplest and most logical answer ( not related to any database):


    select max(amount) from table A where amount != (select max(amount) from table A)

    this one also will work:

    select max(amount) from table A where amount < (select max(amount) from table A)
    Да, все просто, но ответ Реднека более техничен и универсален. Если попросят найти 3-й.... N-й по величине, то твой ответ обломится, а ответ Реднека - нет.

  6. #36
    Патриот смешно's Avatar
    Join Date
    Apr 2003
    Location
    Страна чудес
    Posts
    55,561

    Default Re: Вопрос на засыпку

    Quote Originally Posted by ETTY View Post
    Да, все просто, но ответ Реднека более техничен и универсален. Если попросят найти 3-й.... N-й по величине, то твой ответ обломится, а ответ Реднека - нет.
    мой не обломится. подумай хорошо.
    4 main reasons why Boston is the best place to live:Red Sox (Baseball), Patriots (Football) World Champions
    Celtics the NBA (Basketball), Bruins Stanley Cup (Hockey)

  7. #37
    Патриот смешно's Avatar
    Join Date
    Apr 2003
    Location
    Страна чудес
    Posts
    55,561

    Default Re: Вопрос на засыпку

    Quote Originally Posted by ETTY View Post
    Да, все просто, но ответ Реднека более техничен и универсален. Если попросят найти 3-й.... N-й по величине, то твой ответ обломится, а ответ Реднека - нет.

    это вообще не будет работать если больше чем 2, нужна другая логика.

    select * from A where AMOUNT < (select max(AMOUNT) from A) order by AMOUNT desc limit 1;
    4 main reasons why Boston is the best place to live:Red Sox (Baseball), Patriots (Football) World Champions
    Celtics the NBA (Basketball), Bruins Stanley Cup (Hockey)

  8. #38
    Свинохрюндель ETTY's Avatar
    Join Date
    Oct 2006
    Location
    д. Грязюкино
    Posts
    6,550

    Default Re: Вопрос на засыпку

    Quote Originally Posted by смешно View Post
    мой не обломится. подумай хорошо.
    Это ты подумай хорошо, потому как твой вариант возвращает только второе максимальное значение.
    Если будет стоять задача найти 5-ое максимальное значение, то облом.

  9. #39
    Патриот смешно's Avatar
    Join Date
    Apr 2003
    Location
    Страна чудес
    Posts
    55,561

    Default Re: Вопрос на засыпку

    Quote Originally Posted by ETTY View Post
    Это ты подумай хорошо, потому как твой вариант возвращает только второе максимальное значение.
    Если будет стоять задача найти 5-ое максимальное значение, то облом.

    для 5 надо добавить 4-ре раза < select max(amount) from table A


    a для универсальности вот это будет самое правильное, где 20 заменяешь на любое максимальное значение.

    SELECT MIN(amount) FROM (SELECT DISTINCT amount FROM TABLE A WHERE rownum <= 20 ORDER BY amount DESC) ;
    4 main reasons why Boston is the best place to live:Red Sox (Baseball), Patriots (Football) World Champions
    Celtics the NBA (Basketball), Bruins Stanley Cup (Hockey)

  10. #40
    неисправимый оптимист Джентльмен's Avatar
    Join Date
    Oct 2007
    Location
    Boston
    Posts
    13,213

    Default Re: Вопрос на засыпку

    а что будет если в таблице всего одна row?

    или другой экстрим - несколько rows с максимальным значением - скажем "напечатать двоих самых старших сотрудников"?
    надо уметь закрывать скучную книгу, уходить с неинтересного фильма, увольняться с плохой работы и расставаться с людьми, которые не дорожат тобой

Page 4 of 5 FirstFirst 12345 LastLast

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
Russian America Top. Рейтинг ресурсов Русской Америки. Terms of Service | Privacy Policy Рейтинг@Mail.ru