Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
Топик располагается на нескольких страницах: [1] 2 3   вперед  Ctrl      все
 max number  [new]
Aleksandrx
Member

Откуда:
Сообщений: 122
Добрый день всем.

Подскажите, пожалуйста, как найти максимальный номер БД в Column, если номер заводится в БД не подряд.
4 июл 11, 10:26    [10916693]     Ответить | Цитировать Сообщить модератору
 Re: max number  [new]
Ken@t
Member

Откуда: 大地
Сообщений: 3265
Aleksandrx
Добрый день всем.

Подскажите, пожалуйста, как найти максимальный номер БД в Column, если номер заводится в БД не подряд.

До BOL так и не добрались ?

SELECT MAX(Column) FROM ... 
4 июл 11, 10:30    [10916727]     Ответить | Цитировать Сообщить модератору
 Re: max number  [new]
Aleksandrx
Member

Откуда:
Сообщений: 122
SELECT MAX(Column) FROM ... 
[/quot]

Не работает. Возможно ошибка.
Код которій я написал

SELECT @Number = (MAX Document.Name)
FROM Document
WHERE Document.Client = @Client
4 июл 11, 11:03    [10916958]     Ответить | Цитировать Сообщить модератору
 Re: max number  [new]
iap
Member

Откуда: Москва
Сообщений: 47142
Aleksandrx
SELECT MAX(Column) FROM ... 


Не работает. Возможно ошибка.
Код которій я написал

SELECT @Number = (MAX Document.Name)
FROM Document
WHERE Document.Client = @Client[/quot]Издеваетесь?
Скобки где хош ставить можно, да?
Что такое "функция" знаете? Хоть в каком-нибудь языке программирования?
4 июл 11, 11:06    [10916975]     Ответить | Цитировать Сообщить модератору
 Re: max number  [new]
iap
Member

Откуда: Москва
Сообщений: 47142
Aleksandrx
Ken@t
SELECT MAX(Column) FROM ... 


Не работает. Возможно ошибка.
Код которій я написал

SELECT @Number = (MAX Document.Name)
FROM Document
WHERE Document.Client = @Client
Издеваетесь?
Скобки где хош ставить можно, да?
Что такое "функция" знаете? Хоть в каком-нибудь языке программирования?
4 июл 11, 11:07    [10916987]     Ответить | Цитировать Сообщить модератору
 Re: max number  [new]
Aleksandrx
Member

Откуда:
Сообщений: 122
iap
Aleksandrx
пропущено...


Не работает. Возможно ошибка.
Код которій я написал

SELECT @Number = MAX (Document.Name)
FROM Document
WHERE Document.Client = @Client
Издеваетесь?
Скобки где хош ставить можно, да?
Что такое "функция" знаете? Хоть в каком-нибудь языке программирования?


Скобки у меня в програме все нормально. Это ошибка когда вам писал

Программа выдает мне число но не максимальное
4 июл 11, 11:12    [10917014]     Ответить | Цитировать Сообщить модератору
 Re: max number  [new]
AlexDoul
Member

Откуда: Екатеринбург
Сообщений: 30
Aleksandrx,

А тип какой у столбца, из которого Вы пробуете взять максимальное значение?
4 июл 11, 11:16    [10917047]     Ответить | Цитировать Сообщить модератору
 Re: max number  [new]
Aleksandrx
Member

Откуда:
Сообщений: 122
AlexDoul
Aleksandrx,

А тип какой у столбца, из которого Вы пробуете взять максимальное значение?


Тип INT
4 июл 11, 11:33    [10917187]     Ответить | Цитировать Сообщить модератору
 Re: max number  [new]
Aleksandrx
Member

Откуда:
Сообщений: 122
Aleksandrx
AlexDoul
Aleksandrx,

А тип какой у столбца, из которого Вы пробуете взять максимальное значение?


Тип INT


я извиняюсь varchar
4 июл 11, 11:34    [10917194]     Ответить | Цитировать Сообщить модератору
 Re: max number  [new]
iap
Member

Откуда: Москва
Сообщений: 47142
Aleksandrx
Aleksandrx
пропущено...


Тип INT


я извиняюсь varchar
Вы, наверно, знаете, как сравниваются строки?
4 июл 11, 11:36    [10917206]     Ответить | Цитировать Сообщить модератору
 Re: max number  [new]
Ken@t
Member

Откуда: 大地
Сообщений: 3265
Aleksandrx
Aleksandrx
пропущено...


Тип INT


я извиняюсь varchar


Прикольно , хранить целочисленное значение в строковом виде.

Давайте уж полностью колитесь какие значения в поле таблички )).
4 июл 11, 11:45    [10917298]     Ответить | Цитировать Сообщить модератору
 Re: max number  [new]
AlexDoul
Member

Откуда: Екатеринбург
Сообщений: 30
чего смотреть-то? :)
ясно, что при наличии значений '9' и '888' максимальным будет первое :)
4 июл 11, 11:49    [10917336]     Ответить | Цитировать Сообщить модератору
 Re: max number  [new]
Aleksandrx
Member

Откуда:
Сообщений: 122
AlexDoul
чего смотреть-то? :)
ясно, что при наличии значений '9' и '888' максимальным будет первое :)


Да Вы правы. Максимальное число 9. Что мне делать ?
4 июл 11, 19:30    [10920589]     Ответить | Цитировать Сообщить модератору
 Re: max number  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31948
Aleksandrx
AlexDoul
чего смотреть-то? :)
ясно, что при наличии значений '9' и '888' максимальным будет первое :)


Да Вы правы. Максимальное число 9. Что мне делать ?
А у вас-то вообще нету своих вариантов?
4 июл 11, 19:35    [10920604]     Ответить | Цитировать Сообщить модератору
 Re: max number  [new]
Knyazev Alexey
Member

Откуда: Екб -> Мск
Сообщений: 10233
Блог
Aleksandrx
AlexDoul
чего смотреть-то? :)
ясно, что при наличии значений '9' и '888' максимальным будет первое :)


Да Вы правы. Максимальное число 9. Что мне делать ?


1) хранить данные в столбцах "правельного" типа
2) преобразовывать данные в "правельный" вид и уже потом только искать максимум
4 июл 11, 20:41    [10920742]     Ответить | Цитировать Сообщить модератору
 Re: max number  [new]
Aleksandrx
Member

Откуда:
Сообщений: 122
Knyazev Alexey
Aleksandrx
пропущено...

Да Вы правы. Максимальное число 9. Что мне делать ?


1) хранить данные в столбцах "правельного" типа
2) преобразовывать данные в "правельный" вид и уже потом только искать максимум


Подскажите, пожалуйста, где я не верно проставляю тип.

ALTER PROCEDURE dbo.NumberDocument (@CodeClient int, @Number varchar (50) OUTPUT)

AS
BEGIN

SELECT @Number = MAX (Document.Number)
FROM Document
WHERE Document.IdClient = @CodeClient

в таблице "Document" тип Column IdClient Int, а Column Number varchar (50)
5 июл 11, 08:15    [10921879]     Ответить | Цитировать Сообщить модератору
 Re: max number  [new]
Ken@t
Member

Откуда: 大地
Сообщений: 3265
Aleksandrx,

в таблице не правильный тип.

select MAX (CAST( T AS INT) )
FROM
(
 SELECT '9'AS T
 UNION
 SELECT '88'AS T
) T
5 июл 11, 08:31    [10921903]     Ответить | Цитировать Сообщить модератору
 Re: max number  [new]
AlexDoul
Member

Откуда: Екатеринбург
Сообщений: 30
Ken@t,

да, но, коли поле текстовое, то надо бы проверить его "на число" - добавить условие isnumeric(номер_документа) = 1.
А встретится значение '88-1' и будет ошибка. Еще можно убирать значения с запятыми, точками и прочими символами, значения которых к Int не преобразовать.
5 июл 11, 09:53    [10922292]     Ответить | Цитировать Сообщить модератору
 Re: max number  [new]
Aleksandrx
Member

Откуда:
Сообщений: 122
AlexDoul
Ken@t,

да, но, коли поле текстовое, то надо бы проверить его "на число" - добавить условие isnumeric(номер_документа) = 1.
А встретится значение '88-1' и будет ошибка. Еще можно убирать значения с запятыми, точками и прочими символами, значения которых к Int не преобразовать.


У меня ошибка "'"

ALTER PROCEDURE dbo.NumberDocument (@CodeClient int, @Number varchar (50) OUTPUT)

AS
BEGIN

SELECT @Number = MAX (CAST(Document.Number AS INT))
FROM
(
SELECT '9' AS Document.Number
UNION
SELECT '88' AS Document.Number
) Document

WHERE Document.IdClient = @CodeClient
5 июл 11, 10:17    [10922468]     Ответить | Цитировать Сообщить модератору
 Re: max number  [new]
iap
Member

Откуда: Москва
Сообщений: 47142
Aleksandrx,

у Вас нет поля Document.IdClient

Может, всё же покажете, что там у Вас в поле Number.
Цифры или и не-цифры тоже?
Во втором случае что Вы хотите от максимума?
5 июл 11, 10:30    [10922583]     Ответить | Цитировать Сообщить модератору
 Re: max number  [new]
iap
Member

Откуда: Москва
Сообщений: 47142
iap
Aleksandrx,

у Вас нет поля Document.IdClient

Может, всё же покажете, что там у Вас в поле Number.
Цифры или и не-цифры тоже?
Во втором случае что Вы хотите от максимума?
Да и алиасы нельзя так писать (Document.Number)
5 июл 11, 10:32    [10922605]     Ответить | Цитировать Сообщить модератору
 Re: max number  [new]
Aleksandrx
Member

Откуда:
Сообщений: 122
iap
Aleksandrx,

у Вас нет поля Document.IdClient

Может, всё же покажете, что там у Вас в поле Number.
Цифры или и не-цифры тоже?
Во втором случае что Вы хотите от максимума?


В поле Number у меня исключительно цифры
5 июл 11, 10:37    [10922636]     Ответить | Цитировать Сообщить модератору
 Re: max number  [new]
s.w.a.n.
Member

Откуда: Москва
Сообщений: 137
Aleksandrx
В поле Number у меня исключительно цифры

MMMDCCCXLVII - такие цифры?
5 июл 11, 10:47    [10922710]     Ответить | Цитировать Сообщить модератору
 Re: max number  [new]
iap
Member

Откуда: Москва
Сообщений: 47142
Aleksandrx
iap
Aleksandrx,

у Вас нет поля Document.IdClient

Может, всё же покажете, что там у Вас в поле Number.
Цифры или и не-цифры тоже?
Во втором случае что Вы хотите от максимума?


В поле Number у меня исключительно цифры
И их может быть 50?
А почему тип-то строковый?
Если Вам надо получить максимум из строк, состоящих только из цифр,
принимая строки за числа, то выравнивайте строки по правому краю,
заполняя слева каким-нибудь символом, например, пробелом.
MAX(RIGHT(SPACE(50)+Number,50))
5 июл 11, 10:48    [10922728]     Ответить | Цитировать Сообщить модератору
 Re: max number  [new]
Ken@t
Member

Откуда: 大地
Сообщений: 3265
Aleksandrx
iap
Aleksandrx,

у Вас нет поля Document.IdClient

Может, всё же покажете, что там у Вас в поле Number.
Цифры или и не-цифры тоже?
Во втором случае что Вы хотите от максимума?


В поле Number у меня исключительно цифры


1. И какого тогда ,буя, поле в БД varchar(50) ?
2. При оформлении пользуйтесь тэгом SRC
3. БОЛ откройте наконец.
5 июл 11, 11:00    [10922822]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2 3   вперед  Ctrl      все
Все форумы / Microsoft SQL Server Ответить