我有来自Oracle base和MS SQL base的数据,我需要拆分它们。 Oracle基础中的一部分数据和ms SQL上的另一部分数据。所以我需要从我设置的日期从MS SQL中获取数据。 P.S。我在DESC 订购的基准和日期输出中的所有日期,总共应为12行。这是我的代码:
例如:
12 11 10
如果Oracle在10上停止,那么我应该从9 中获取数据 9 8 7 6 5 4 3 2 1
<?php
$monthdifference = monthdif($mismonthnumb , Date("Y-m-d")); //this function to detect how many rows I should take data from oracle base
$dovrArray = explode("|", $l_return); // exploding data from oracle base
for($i = 0; $i < $monthdifference; $i++){ //here i set row count
$xx = explode(",", $dovrArray[$i]); //exploding again data from oracle
$ss .= "<start>\n<example1>".$xx[0]."</example1>\n<example2>".(float)$xx[1]."</example2>\n<example3>".(float)$xx[2]."</example3>\n<example4>".$xx[3]."</example4>\n</start>\n";
}
$xml .= $ss; //DONE FOR ORACLE BASE
$connection = m_c("HERE IS MY CONNECTION BASE NAME");
$popit = getMonthString($code); //Here i set date TILL which i should need to fetch data
$query = "MY QUERY";
$query_last_step = sqlsrv_query($connection, $query); //ms sql query
while($row = sqlsrv_fetch_array($query_last_step))
{
$ss .="<start>\n<example1>".$row [7]."</example1>\n<example2>".(float)$row [5]."</example2>\n<example3>".(float)$row [4]."</example3>\n<example4>".$row [3]."</example4>\n</start>\n";
}
$xml .= $ss; //DONE FOR MS SQL BASE
?>
答案 0 :(得分:0)
我找到了解决方案,以防有人需要它。
我收集所有数组
<?php
$mssqlaray = array();
$index = 0;
while($row = sqlsrv_fetch_array($query))
{
$mssqlaray[$index] = $row;
$index++;
}
&#13;
我只是将它添加到for循环
<?php
for($j = $monthdifference; $j < 12; $j++)
{
$sss .="<start>\n<example1>".$mssqlaray[$j][7]."</example1>\n<example2>".(float)$mssqlaray[$j][5]."</example2>\n<example3>".(float)$mssqlaray[$j][4]."</example3>\n<example4>".$mssqlaray[$j][3]."</example4>\n</start>\n";
}
$xml .= $sss;
&#13;
并将其拆分为Oracle数据