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

Откуда:
Сообщений: 598
Как отформатировать данные во втором столбце (к примеру) по центру?
Заранее спасибо.
DECLARE @tableHTML  NVARCHAR(MAX) ;

SET @tableHTML =
    N'<H1>Work Order Report</H1>' +
    N'<table border="1">' +
    N'<tr><th>Work Order ID</th><th>Product ID</th>' +
    N'<th>Name</th><th>Order Qty</th><th>Due Date</th>' +
    N'<th>Expected Revenue</th></tr>' +
    CAST ( ( SELECT td = wo.WorkOrderID,       '',
                    td = p.ProductID, '',
                    td = p.Name, '',
                    td = wo.OrderQty, '',
                    td = wo.DueDate, '',
                    td = (p.ListPrice - p.StandardCost) * wo.OrderQty
              FROM AdventureWorks.Production.WorkOrder as wo
              JOIN AdventureWorks.Production.Product AS p
              ON wo.ProductID = p.ProductID
              WHERE DueDate > '2004-04-30'
                AND DATEDIFF(dd, '2004-04-30', DueDate) < 2 
              ORDER BY DueDate ASC,
                       (p.ListPrice - p.StandardCost) * wo.OrderQty DESC
              FOR XML PATH('tr'), TYPE 
    ) AS NVARCHAR(MAX) ) +
    N'</table>' ;

EXEC msdb.dbo.sp_send_dbmail @recipients='danw@Adventure-Works.com',
    @subject = 'Work Order List',
    @body = @tableHTML,
    @body_format = 'HTML' ;
19 июн 08, 04:09    [5818512]     Ответить | Цитировать Сообщить модератору
 Re: HTML in SQL  [new]
Сергей Мишин
Member

Откуда:
Сообщений: 376
select
	replace(
		replace(
			cast(
				(SELECT td_a=W,'',td='h' FROM (select '2323' w)v FOR XML PATH('tr'), TYPE
				) as varchar(max))
				,'<td_a>','<td align=center>')
			,'</td_a>','</td>')
первое что в голову пришло.. наверно есть и получше способ
19 июн 08, 10:04    [5818939]     Ответить | Цитировать Сообщить модератору
Между сообщениями интервал более 1 года.
 Re: HTML in SQL  [new]
tt12
Member

Откуда: Ленинград
Сообщений: 86
Idol_111,

SELECT td = wo.WorkOrderID,       '',
                    "td" = p.ProductID, '',
                    "td/@align" = 'center',
                    "td" = p.Name, '',
                    "td" = wo.OrderQty, '',
                    "td" = wo.DueDate, '',
                    "td" = (p.ListPrice - p.StandardCost) * wo.OrderQty
              FROM AdventureWorks.Production.WorkOrder as wo
              JOIN AdventureWorks.Production.Product AS p
              ON wo.ProductID = p.ProductID
              WHERE DueDate > '2004-04-30'
                AND DATEDIFF(dd, '2004-04-30', DueDate) < 2 
              ORDER BY DueDate ASC,
                       (p.ListPrice - p.StandardCost) * wo.OrderQty DESC
              FOR XML PATH('tr'), TYPE 

14 июл 09, 15:36    [7414096]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить