PHP Classes
Icontem

File: example.php


  Search   All class groups All class groups   Latest entries Latest entries   Top 10 charts Top 10 charts   Newsletter Newsletter   Blog Blog   Forums Forums   Help FAQ Help FAQ  
  Login   Register  
Recommend this page to a friend! ReTweet ReTweet Stumble It! Stumble It! Bookmark in del.icio.us Bookmark in del.icio.us
  Classes of François NEUMANN-RYSTOW  >  SQL Parse Convert to Tree Array  >  example.php  
File: example.php
Role: Example script
Content type: text/plain
Description: show how to use the class
Class: SQL Parse Convert to Tree Array
Build a tree to represent an SQL query
 

Contents

Class file image Download
<?php
/**
* Author  : NEUMANN-RYSTOW François <kalachnkv@free.fr>
* Date    : 23 Oct, 2008
* Purpose : Usage example of dqml2tree class
*/

require 'dqml2tree.php';

// simple query
$sql_query "SELECT field1, field2 FROM table WHERE field3='val1' AND field4=5 OR field5='val2';";

$query2tree = new dqml2tree($sql_query);
$sql_tree $query2tree->make();

print_r($sql_tree);


// complex query
$sql_query 'SELECT 

*,
(SELECT avg(field1), field2 as alias1, field3, field4 FROM table1 WHERE field1=table2.field2) as query_field1 

FROM 
table3, 
table4,
((table5 AS alias6
LEFT JOIN table6 ON table5.field5=table6.field5)
INNER JOIN table7 ON table6.field5=table7.field5)
OUTER JOIN table8 ON table7.field5=table8.field5
JOIN table9 ON table8.field5=table9.field5

WHERE
field5 IN (SELECT field5 FROM table10 WHERE field6=\'y\')
AND 
field7=\'SELECT field8 FROM table11 WHERE field9 LIKE \'\'%plo\'\'\'\'ppy%\'\' AND field9 LIKE \'\'%WORD (OTHER WORD) IN LETTER\'\'\'\'NAMES\'\'\'
OR 
field8 IS NOT NULL
OR 
field9 IS NULL
AND 
field10>=\'value1\'


UNION

SELECT *, (SELECT max(field11), field12 FROM table12 WHERE field13=table13.field13) as field_alias1
FROM table13
WHERE field14=\'n\' AND (field15<=field16 AND field17=field18)


GROUP BY field19, field20
HAVING count(*)>0 AND avg(field1)=1 OR max(field1)<10

INTERSECT SELECT * FROM table15


ORDER BY field1 ASC, field21 DESC
LIMIT 10
OFFSET 100
'
;


$query2tree = new dqml2tree($sql_query);
$sql_tree $query2tree->make();

print_r($sql_tree);

?>

 
  Advertise on this site Advertise on this site   Site map Site map   Statistics Statistics   Site tips Site tips   Privacy policy Privacy policy   Contact Contact  

For more information send a message to :
info at phpclasses dot org.
Copyright (c) Icontem 1999-2009 PHP Classes - PHP Class Scripts
  PHP Book Reviews - Reviews of books and other products