Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 получить html table с 'for xml' запроса  [new]
зеленый админ
Member

Откуда:
Сообщений: 247
Привет, есть некий запрос. Хочется его результат получить в виде одной стринги -html-таблицы.
Максимум, что я понял - можно сформировать:
select a.field1 as td, a.field2 as td2, a.field3 as td3
from my_table as a
FOR xml path('tr') 


и все вхождения <[/]td2>, <[/]td3> менять на соотв <[/]td>. Есть ли более изящный способ?
26 май 14, 17:59    [16075345]     Ответить | Цитировать Сообщить модератору
 Re: получить html table с 'for xml' запроса  [new]
daw
Member

Откуда: Муром -> Москва
Сообщений: 7381
зеленый админ,

так?
select top (10) o.[object_id] [td], null, o.name [td] from sys.objects o for xml path('tr');
26 май 14, 18:19    [16075439]     Ответить | Цитировать Сообщить модератору
 Re: получить html table с 'for xml' запроса  [new]
зеленый админ
Member

Откуда:
Сообщений: 247
daw,

красавелла!
26 май 14, 18:30    [16075515]     Ответить | Цитировать Сообщить модератору
 Re: получить html table с 'for xml' запроса  [new]
user89
Member

Откуда:
Сообщений: 2083
зеленый админ,

еще Способ 2
26 май 14, 19:37    [16075790]     Ответить | Цитировать Сообщить модератору
 Re: получить html table с 'for xml' запроса  [new]
Сон Веры Павловны
Member

Откуда:
Сообщений: 6201
зеленый админ
Есть ли более изящный способ?

XSLT на клиенте.
27 май 14, 03:17    [16076882]     Ответить | Цитировать Сообщить модератору
 Re: получить html table с 'for xml' запроса  [new]
Mnior
Member

Откуда: Кишинёв
Сообщений: 6724
user89, Сон Веры Павловны

Это типа изящные.
27 май 14, 23:23    [16082681]     Ответить | Цитировать Сообщить модератору
 Re: получить html table с 'for xml' запроса  [new]
Сон Веры Павловны
Member

Откуда:
Сообщений: 6201
Mnior
Это типа изящные.

XSLT - вполне. Универсально, декларативно, выглядит лучше, чем хардкор с конкатенацией и заменой строк-подстрок. Он вообще-то для этой цели и был придуман - для произвольных трансформаций XML.
28 май 14, 03:24    [16083162]     Ответить | Цитировать Сообщить модератору
 Re: получить html table с 'for xml' запроса  [new]
Mnior
Member

Откуда: Кишинёв
Сообщений: 6724
Сон Веры Павловны
Универсально, декларативно, выглядит лучше, чем хардкор с конкатенацией и заменой строк-подстрок.
Найдите точку опоры и я переверну мир.
С заменой строк это вообще эпик, с ним сравнивать - всё шикарно.
Сон Веры Павловны
Он вообще-то для этой цели и был придуман - для произвольных трансформаций XML.
Вещь хорошая c Enterprise подходом, но в целом подход не очень. Один из главных главный принципов нарушается, не плодите сущностей понапрасну. Лишние трансформации не нужны, хотя современные тяхнологии настолько деградировали что практически только из них и состоят.
XSLT вы просто вдумайтесь что это и что он делает в общей картине, он эпичен сам по себе. Не говоря про вырвиглазность.


Разворачивать ещё целый многоэлементный комбайн ради маленькой фишечки - ну его.
Если уже что-то разворачитвать на клиенте, то уже пусть сам HTML и генерируется полностью на той стороне. И скулю легче и проще и прозрачнее и эффективность остаётся.
28 май 14, 13:14    [16084934]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить