| @@ 2075-2094 (lines=20) @@ | ||
| 2072 | * @param array $args |
|
| 2073 | * @return string Sélection de colonnes pour une clause SELECT |
|
| 2074 | */ |
|
| 2075 | function _sqlite_calculer_select_as($args) { |
|
| 2076 | $res = ''; |
|
| 2077 | foreach ($args as $k => $v) { |
|
| 2078 | if (substr($k, -1) == '@') { |
|
| 2079 | // c'est une jointure qui se refere au from precedent |
|
| 2080 | // pas de virgule |
|
| 2081 | $res .= ' ' . $v; |
|
| 2082 | } else { |
|
| 2083 | if (!is_numeric($k)) { |
|
| 2084 | $p = strpos($v, " "); |
|
| 2085 | if ($p) { |
|
| 2086 | $v = substr($v, 0, $p) . " AS '$k'" . substr($v, $p); |
|
| 2087 | } else { |
|
| 2088 | $v .= " AS '$k'"; |
|
| 2089 | } |
|
| 2090 | } |
|
| 2091 | $res .= ', ' . $v; |
|
| 2092 | } |
|
| 2093 | } |
|
| 2094 | ||
| 2095 | return substr($res, 2); |
|
| 2096 | } |
|
| 2097 | ||
| @@ 492-512 (lines=21) @@ | ||
| 489 | * @param array $args |
|
| 490 | * @return string Sélection de colonnes pour une clause SELECT |
|
| 491 | */ |
|
| 492 | function spip_mysql_select_as($args) { |
|
| 493 | $res = ''; |
|
| 494 | foreach ($args as $k => $v) { |
|
| 495 | if (substr($k, -1) == '@') { |
|
| 496 | // c'est une jointure qui se refere au from precedent |
|
| 497 | // pas de virgule |
|
| 498 | $res .= ' ' . $v; |
|
| 499 | } else { |
|
| 500 | if (!is_numeric($k)) { |
|
| 501 | $p = strpos($v, " "); |
|
| 502 | if ($p) { |
|
| 503 | $v = substr($v, 0, $p) . " AS `$k`" . substr($v, $p); |
|
| 504 | } else { |
|
| 505 | $v .= " AS `$k`"; |
|
| 506 | } |
|
| 507 | } |
|
| 508 | $res .= ', ' . $v; |
|
| 509 | } |
|
| 510 | } |
|
| 511 | ||
| 512 | return substr($res, 2); |
|
| 513 | } |
|
| 514 | ||
| 515 | ||