|
bjornh
Yak Posting Veteran
87 Posts |
Posted - 2002-10-23 : 05:33:51
|
| Hi there,I have created this query:declare @siteID intdeclare @paginaID intdeclare @v_datum datetimedeclare @t_datum datetimedeclare @interval decimal(9,1)declare @SQl varchar(1000)set @siteID = 258679set @paginaID = 2set @v_datum = '1-1-2002'set @t_datum = '12-12-2002'set @interval = 10select @SQL = 'select naam = (SELECT naam from pagina_' + convert(varchar(20),@siteID) + ' WHERE id = ' + convert(varchar(20),@paginaID) + '), alias = (SELECT alias from pagina_' + convert(varchar(20),@siteID) + ' WHERE id = ' + convert(varchar(20),@paginaID) + '), total_b = (select sum(bezoekers) from log2_' + convert(varchar(20),@siteID) + ' where datum between ''' + convert(varchar(20),@V_datum) + ''' AND ''' + convert(varchar(20),@t_datum) + ''' AND paginaID = ' + convert(varchar(20),@paginaID) + '), total_p = (select sum(pageviews) from log2_' + convert(varchar(20),@siteID) + ' where datum between ''' + convert(varchar(20),@V_datum) + ''' AND ''' + convert(varchar(20),@t_datum) + ''' AND paginaID = ' + convert(varchar(20),@paginaID) + '), gemiddeld = (SELECT sum(bezoekers)/' + convert(varchar(20),@interval) + ' from log2_' + convert(varchar(20),@siteID) + ' where datum between ''' + convert(varchar(20),@V_datum) + ''' AND ''' + convert(varchar(20),@t_datum) + ''' AND paginaID = ' + convert(varchar(20),@paginaID) + '), dagTopD = (SELECT datum from log2_' + convert(varchar(20),@siteID) + ' WHERE bezoekers in (SELECT max(Bezoekers) from log2_' + convert(varchar(20),@siteID) + ' where datum between ''' + convert(varchar(20),@V_datum) + ''' AND ''' + convert(varchar(20),@t_datum) + ''' AND paginaID = ' + convert(varchar(20),@paginaID) + ')), DagTopB = (SELECT max(bezoekers) from log2_' + convert(varchar(20),@siteID) + ' where datum between ''' + convert(varchar(20),@V_datum) + ''' AND ''' + convert(varchar(20),@t_datum) + ''' AND paginaID = ' + convert(varchar(20),@paginaID) + ')'exec(@SQL)This one works fine, but when I try to add another line, he give an error.This one doesn't work:declare @siteID intdeclare @paginaID intdeclare @v_datum datetimedeclare @t_datum datetimedeclare @interval decimal(9,1)declare @SQl varchar(1000)set @siteID = 258679set @paginaID = 2set @v_datum = '1-1-2002'set @t_datum = '12-12-2002'set @interval = 10select @SQL = 'select naam = (SELECT naam from pagina_' + convert(varchar(20),@siteID) + ' WHERE id = ' + convert(varchar(20),@paginaID) + '), alias = (SELECT alias from pagina_' + convert(varchar(20),@siteID) + ' WHERE id = ' + convert(varchar(20),@paginaID) + '), total_b = (select sum(bezoekers) from log2_' + convert(varchar(20),@siteID) + ' where datum between ''' + convert(varchar(20),@V_datum) + ''' AND ''' + convert(varchar(20),@t_datum) + ''' AND paginaID = ' + convert(varchar(20),@paginaID) + '), total_p = (select sum(pageviews) from log2_' + convert(varchar(20),@siteID) + ' where datum between ''' + convert(varchar(20),@V_datum) + ''' AND ''' + convert(varchar(20),@t_datum) + ''' AND paginaID = ' + convert(varchar(20),@paginaID) + '), gemiddeld = (SELECT sum(bezoekers)/' + convert(varchar(20),@interval) + ' from log2_' + convert(varchar(20),@siteID) + ' where datum between ''' + convert(varchar(20),@V_datum) + ''' AND ''' + convert(varchar(20),@t_datum) + ''' AND paginaID = ' + convert(varchar(20),@paginaID) + '), dagTopD = (SELECT datum from log2_' + convert(varchar(20),@siteID) + ' WHERE bezoekers in (SELECT max(Bezoekers) from log2_' + convert(varchar(20),@siteID) + ' where datum between ''' + convert(varchar(20),@V_datum) + ''' AND ''' + convert(varchar(20),@t_datum) + ''' AND paginaID = ' + convert(varchar(20),@paginaID) + ')), dagTopD2 = (SELECT datum from log2_' + convert(varchar(20),@siteID) + ' WHERE bezoekers in (SELECT max(Bezoekers) from log2_' + convert(varchar(20),@siteID) + ' where datum between ''' + convert(varchar(20),@V_datum) + ''' AND ''' + convert(varchar(20),@t_datum) + ''' AND paginaID = ' + convert(varchar(20),@paginaID) + ')), DagTopB = (SELECT max(bezoekers) from log2_' + convert(varchar(20),@siteID) + ' where datum between ''' + convert(varchar(20),@V_datum) + ''' AND ''' + convert(varchar(20),@t_datum) + ''' AND paginaID = ' + convert(varchar(20),@paginaID) + ')'exec(@SQL)With the error message:Server: Msg 105, Level 15, State 1, Line 9Unclosed quotation mark before the character string 'J'.Server: Msg 170, Level 15, State 1, Line 9Line 9: Incorrect syntax near 'J'.What is wrong with this approach of SQL? |
|