mirror of
https://github.com/Lastorder-DC/rhymix.git
synced 2026-05-01 00:02:21 +09:00
add "click count -incr()" for Cubrid Xml Query
git-svn-id: http://xe-core.googlecode.com/svn/sandbox@6826 201d5d3c-b55e-5fd7-737f-ddc643e51545
This commit is contained in:
parent
fb9f2dd4a4
commit
314700badd
2 changed files with 52 additions and 50 deletions
|
|
@ -582,21 +582,29 @@
|
|||
$column_list = array();
|
||||
foreach($output->columns as $key => $val) {
|
||||
$name = $val['name'];
|
||||
$alias = $val['alias'];
|
||||
|
||||
$click_count = '%s';
|
||||
if($val['click_count'] && count($output->conditions)>0){
|
||||
$click_count = 'incr(%s)';
|
||||
}
|
||||
|
||||
$alias = $val['alias'] ? sprintf('"%s"',$val['alias']) : null;
|
||||
if(substr($name,-1) == '*') {
|
||||
$column_list[] = $name;
|
||||
} elseif(strpos($name,'.')===false && strpos($name,'(')===false) {
|
||||
if($alias) $column_list[] = sprintf('"%s" as "%s"', $name, $alias);
|
||||
else $column_list[] = sprintf('"%s"',$name);
|
||||
$name = sprintf($click_count,$name);
|
||||
if($alias) $column_list[] = sprintf('%s as %s', $name, $alias);
|
||||
else $column_list[] = sprintf('%s',$name);
|
||||
} else {
|
||||
if(strpos($name,'.')!=false) {
|
||||
list($prefix, $name) = explode('.',$name);
|
||||
$deli=($name == '*') ? "" : "\"";
|
||||
if($alias) $column_list[] = sprintf("%s.$deli%s$deli as \"%s\"", $prefix, $name, $alias);
|
||||
else $column_list[] = sprintf("%s.$deli%s$deli",$prefix,$name);
|
||||
$prefix = sprintf('"%s"',$prefix);
|
||||
$name = ($name == '*') ? $name : sprintf('"%s"',$name);
|
||||
|
||||
$column_list[] = sprintf($click_count,sprintf('%s.%s', $prefix, $name)) . ($alias ? sprintf(' as %s',$alias) : '');
|
||||
|
||||
} else {
|
||||
if($alias) $column_list[] = sprintf('%s as "%s"', $name, $alias);
|
||||
else $column_list[] = sprintf('%s',$name);
|
||||
$column_list[] = sprintf($click_count,$name) . ($alias ? sprintf(' as %s',$alias) : '');
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue