powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Выравнивание по правому краю
14 сообщений из 14, страница 1 из 1
Выравнивание по правому краю
    #39862967
botan131
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Прошу помочь выровнять результаты SQL запроса по правому краю.
В результате запроса данные выходят в таком виде:
1345.23
23.00
343243.23
9092037283.25
Нужно упорядочить таким образом, чтобы дробные под дробными, единицы под единицами, десятки под десятками и т.д

Спасибо
...
Рейтинг: 0 / 0
Выравнивание по правому краю
    #39862969
TaPaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
botan131,

непонятно в каком " таком виде", но добавить нулями и вперёд
...
Рейтинг: 0 / 0
Выравнивание по правому краю
    #39862971
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Попросите средство ОТОБРАЖЕНИЯ выравнивать этот столбец по правому краю.
...
Рейтинг: 0 / 0
Выравнивание по правому краю
    #39862974
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В крайнем случае

Код: sql
1.
SELECT RIGHT(CONCAT(REPLICATE(CHAR(32), 20), STR(field)), 20), ...



20 символов, есссно, от фонаря.
...
Рейтинг: 0 / 0
Выравнивание по правому краю
    #39862996
Minamoto
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AkinaВ крайнем случае

Код: sql
1.
SELECT RIGHT(CONCAT(REPLICATE(CHAR(32), 20), STR(field)), 20), ...



20 символов, есссно, от фонаря.
А потом вспоминаем, что шрифт у нас не моноширинный, расстраиваемся, и бросаем эту затею.
...
Рейтинг: 0 / 0
Выравнивание по правому краю
    #39863004
botan131
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Minamoto,
к сожалению Вы правы. Этот способ создает кривизну другого рода.
...
Рейтинг: 0 / 0
Выравнивание по правому краю
    #39863006
botan131
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Akina,
Средство отображения - программа SQL Client под Андроидом, она не позволяет манипулировать результатами.
...
Рейтинг: 0 / 0
Выравнивание по правому краю
    #39863016
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
бред конечно, но вот так можно:

Код: sql
1.
2.
3.
4.
5.
declare @t table (data decimal(16,2));
insert into @t(data)
values (1345.23), (23.00), (343243.23), (9092037283.25);

select RIGHT(REPLICATE('_', 20) + convert(varchar(20), t.data), 20) as summa from @t t
...
Рейтинг: 0 / 0
Выравнивание по правому краю
    #39863021
Minamoto
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
botan131Akina,
Средство отображения - программа SQL Client под Андроидом, она не позволяет манипулировать результатами.
Собственно, это ответ на ваш вопрос. Не имея доступа к управлению отображением, вы не можете гарантировать отображение.
Для ваших целей нужно изменение именно на уровне отображения - в идеальном варианте - полный доступ и реализация нужного вида, в усеченном - хотя бы моноширинный шрифт, который позволяет обеспечить одинаковую ширину символов.

Все остальное - дикие костыли, можете попробовать подсчитать ширину каждого имеющегося у вас символа при отображении и "добивать" неотображаемыми символами, пробелами, например, до нужной ширины. Но это будет работать на вашем конкретном устройстве, т.е. это абсолютно неуниверсальное решение.
...
Рейтинг: 0 / 0
Выравнивание по правому краю
    #39863029
Minamoto
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Konst_Oneбред конечно, но вот так можно:

Код: sql
1.
2.
3.
4.
5.
declare @t table (data decimal(16,2));
insert into @t(data)
values (1345.23), (23.00), (343243.23), (9092037283.25);

select RIGHT(REPLICATE('_', 20) + convert(varchar(20), t.data), 20) as summa from @t t


Тогда уж так:
Код: sql
1.
select REPLICATE('  ', MAX(LEN(data)) OVER ()-LEN(CAST(data AS varchar(max)))) + convert(varchar(max), t.data) as summa from @t t



Сработает для студии, т.к. там размер пробела ровно в 2 раза меньше числа, а размер чисел не отличается. Но сработает ли для приложения ТС - большой вопрос.
...
Рейтинг: 0 / 0
Выравнивание по правому краю
    #39863044
botan131
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Konst_One,

спасибо. В таком виде работает.
...
Рейтинг: 0 / 0
Выравнивание по правому краю
    #39863417
Фотография PsyMisha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
botan131,

Ужс какой-то! А потом недоумеваем, почему у нас приложение так отжирает ресурсы у телефона и вообще все лагает и глючит!
...
Рейтинг: 0 / 0
Выравнивание по правому краю
    #39863418
TaPaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PsyMishabotan131,

Ужс какой-то! А потом недоумеваем, почему у нас приложение так отжирает ресурсы у телефона и вообще все лагает и глючит!
да! особенно когда это на серевреной части!
...
Рейтинг: 0 / 0
Выравнивание по правому краю
    #39863469
AndrF
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сервер не должен заниматься отображением. Совсем. Это дело клиентской программы.
...
Рейтинг: 0 / 0
14 сообщений из 14, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Выравнивание по правому краю
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]