SuperSQL SuperSQL 2016 12 13 1 SuperSQL ITC 2 SuperSQL 2.1 public html/ssql 2.2 SSedit SSedit (3.1 ) postgresql (ua123456 ) 131.113.101.124 /public html/ssql SuperSQL HTML /public html/ssql http://user.keio.ac.jp/ /ssql/xxxx.html URL ua012345 test.ssql ssql http://user.keio.ac.jp/ ua012345/ssql/test.html URL 1
3 3.1 SSedit ua012345% ssedit SuperSQL config.ssql log.txt( logs.txt) SSedit SSedit 3.2 ssql Putty SSedit ua012345% ssql HTML /public html/ssql.ssql 4 SuperSQL SQL SELECT GENERATE< media >< T F E > GENERATE < media > HTML PDF Excel L A TEX HTML < T F E > Target Form Expression 2
4.1 (,) (!) (%) 3 (,) : Name, Tel name tel (!) : Name! Tel name tel (%) : Name % Tel name tel 4.2 ([ ]) ( [ ], ) : [Name], name1 name2 name10 3
( [ ]! ) : [Name]! name1 name2 name10 [! [, ]! ]! [ ]!, [ ]!, [ ]! 4.3 SuperSQL TFE 1 :! [Name]! name1 name10 2 : {, Name}! {, Tel} name tel 4.4 FROM SuperSQL FROM SQL FROM dept, employee e 4
4.5 SuperSQL 5 SuperSQL 5.1 SuperSQL ( ) <TFE>@{ < > } =, : width (px) : width= 200 : height (px) : height= 20 ( ): padding (px) : padding= 2 : align(left/center/right) : align= left : valign(top/center/bottom) : valign= top : background-color, bgcolor( : bgcolor= red /bgcolor= FF0000 : color, font-color : color= red /color= FF0000 : size, font-size(px) : font-size= 20 5
: font-weight : font-weight= bold : font-style : font-style= italic CSS : style : style= font-variant: small-caps; font-weight: 900 : class : class= item Name@{align= center, font-color= blue, font-size= 20 } HTML dept color bgcolor color (Yellow ) Q0.ssql [(asc)d.floor, d.name@{bgcolor = dc.fcolor}]! FROM dept d, deptcolor dc WHERE dc.floor = d.floor width 100px 200px 300px 300px [ A, B ]! [ A@{width= 100 }, B@{width= 200 }]! 300px [ {A@{width= 100 },B@{width= 200 }}@{width= 300 }]! 6
100,200px 300px : cssfile : cssfile= demo.css CSS css ; charset : charset= utf-8 : author : author= takehiko : background : background= neko.gif : tablealign : tableborder : tableborder= 1 Q1.ssql { { [e.name@{class= name },e.salary@{class= salary }, e.byear@{class= birth }]! }@{title= MEMBER } }@{cssfile= demo.css,charset= euc-jp } Q1.ssql css cssfile= demo.css demo.css demo.css http://ssql.db.ics.keio.ac.jp/demo.css 7
5.2 image image image image(, ) path SuperSQL HTML ( /public html/ssql) image width : 200 ( pict /public html/ssql/picture/ ) Q2.ssql [e.name, image(e.pict,./picture )@{width= 200 }]! 5.3 link FOREACH link FOREACH (%) (%) link FOREACH link FOREACH (%) Q3.ssql Q3.ssql [e.name % {e.salary, e.syear}]! link FOREACH Q4.ssql Q5.ssql 8
Q4.ssql [link(e.name, Q3.ssql, e.id)]! Q5.ssql FOREACH e.id [e.salary, e.syear]! Q4.ssql Q5.ssql link FOREACH link FOREACH URL ( ) 2 ( 2 ) link FOREACH (,) FOREACH link null NO DATA FOUND link FOREACH link FOREACH link link Q6.ssql [link(e.name@{target= _new }, Q6.ssql, e.id)]! 9
link FOREACH http://ssql.db.ics.keio.ac.jp/demo/link/index.html titles.ssql film.ssql actor.ssql theater.ssql town.ssql http://ssql.db.ics.keio.ac.jp/demo/link/titles.html link FOREACH (%) 5.4 ( ) SuperSQL asc desc (ascending order): (asc) id : (asc)e.id (descending order): (desc) : (desc)e.salary id Q7-1.ssql [(asc)e.salary, (desc)e.id, e.name]! Q7-2.ssql [(asc1)e.salary, (desc2)e.id, e.name]! 10
id id Q8.ssql Q8.ssql [ (asc)d.id, [ (desc)e.id,e.name]! ]! FROM dept d, employee e WHERE d.manager=e.manager 5.5 Aggregate Functions Aggregate Functions (max) (min) (avg) (sum) (count) Aggregate Function max[], min[], avg[], sum[], count[] Q9.ssql avg max min Q9.ssql [ e.name ]!, avg[e.salary] 5.6 Q10.ssql e.name 3 Q10.ssql [e.name],3! Q11.ssql e.name e.employee 3 5 11
[ TFE ],number! number [name],5! [ TFE ]!number, number [name]!5, [ TFE ],number% number [name],5% [ TFE ]!number% number [name]!5% [ TFE ],number1!number2% number1 [name],5!4% number2 [ TFE ]!number1,number2% number1 [name]!5,4% number2 Q11.ssql [e.name, e.salary],3!5% 5.7 null null Q12.ssql [null((desc1)e.salary), e.name]! 5.8 anchor anchor anchor a anchor( URL) a( SuperSQL, http://ssql.db.ics.keio.ac.jp/ )! image_anchor( PATH, URL ) img_a( icon/ssql.png, http://ssql.db.ics.keio.ac.jp/ ) 12
5.9 sql SuperSQL DBMS & sql SuperSQL Q13.ssql [e.name, &replace(e.name,, )]! 5.10 SuperSQL TFE ( ) +, -, /, *, % Q14.ssql (1 =113 ) [e.id, e.name, (e.salary / 113) ]! 5.11 SuperSQL /* */ ( 2 ) ( 2 ) Q15.ssql { [e.name /*@{class= name }*/, e.salary]! }/*@{cssfile= demo.css }*/ --,shop s 13
6 db-ta16@db.ics.keio.ac.jp (24-205,209) SuperSQL http://ssql.db.ics.keio.ac.jp/tutorial/ 14