Enviar búsqueda
Cargar
Re Inventing Query Language
•
Descargar como ODP, PDF
•
0 recomendaciones
•
393 vistas
Ruslan Zakirov
Seguir
Tecnología
Denunciar
Compartir
Denunciar
Compartir
1 de 81
Descargar ahora
Recomendados
Understand unicode & utf8 in perl (2)
Understand unicode & utf8 in perl (2)
Jerome Eteve
Books by A J Koutsoukis
Books by A J Koutsoukis
David Koutsoukis
Hacking perl5 core
Hacking perl5 core
Ruslan Zakirov
Facebook & Beyond: Advanced Marketing Options
Facebook & Beyond: Advanced Marketing Options
BWEST Interactive
Ellies Enchanted Garden
Ellies Enchanted Garden
bimbionic
Mtman
Mtman
guestae86c58
Canvas Student Orientation at Stritch
Canvas Student Orientation at Stritch
David Weinberg-Kinsey
Using Social Media To Change Your World: The Power of Girls Online
Using Social Media To Change Your World: The Power of Girls Online
Judy Lubin, Public Square Communications
Recomendados
Understand unicode & utf8 in perl (2)
Understand unicode & utf8 in perl (2)
Jerome Eteve
Books by A J Koutsoukis
Books by A J Koutsoukis
David Koutsoukis
Hacking perl5 core
Hacking perl5 core
Ruslan Zakirov
Facebook & Beyond: Advanced Marketing Options
Facebook & Beyond: Advanced Marketing Options
BWEST Interactive
Ellies Enchanted Garden
Ellies Enchanted Garden
bimbionic
Mtman
Mtman
guestae86c58
Canvas Student Orientation at Stritch
Canvas Student Orientation at Stritch
David Weinberg-Kinsey
Using Social Media To Change Your World: The Power of Girls Online
Using Social Media To Change Your World: The Power of Girls Online
Judy Lubin, Public Square Communications
W200 Powerpoint
W200 Powerpoint
guest540247
Social Media For Emergency Response Communications
Social Media For Emergency Response Communications
BWEST Interactive
DSLs в Perl
DSLs в Perl
Ruslan Zakirov
Katrin Moeseler The Use Of Podcasting In Education
Katrin Moeseler The Use Of Podcasting In Education
guest56229b9
Saanich Parks & Recreation, Dec 8, 2011
Saanich Parks & Recreation, Dec 8, 2011
BWEST Interactive
Mocktail '08'
Mocktail '08'
Grace Underdown
Vireb may10
Vireb may10
BWEST Interactive
Open source бизнес и perl внутри
Open source бизнес и perl внутри
Ruslan Zakirov
Devel::PPAP
Devel::PPAP
Ruslan Zakirov
Python - Getting to the Essence - Points.com - Dave Park
Python - Getting to the Essence - Points.com - Dave Park
pointstechgeeks
Writing Apps the Google-y Way
Writing Apps the Google-y Way
Pamela Fox
Antlr V3
Antlr V3
guest5024494
Streams of information - Chicago crystal language monthly meetup
Streams of information - Chicago crystal language monthly meetup
Brian Cardiff
Plone For Developers - World Plone Day, 2009
Plone For Developers - World Plone Day, 2009
Core Software Group
Addmi 10.5-basic query-language
Addmi 10.5-basic query-language
odanyboy
Writing Apps the Google-y Way (Brisbane)
Writing Apps the Google-y Way (Brisbane)
Pamela Fox
Mongokit presentation mongofr-2010
Mongokit presentation mongofr-2010
namlook
The Kotlin Programming Language
The Kotlin Programming Language
intelliyole
C to perl binding
C to perl binding
Shmuel Fomberg
Php Sq Lite
Php Sq Lite
mussawir20
Design Patterns in Ruby
Design Patterns in Ruby
Aleksander Dąbrowski
IRC Chat snippets as presentations
IRC Chat snippets as presentations
Multipoint Thoughts
Más contenido relacionado
Destacado
W200 Powerpoint
W200 Powerpoint
guest540247
Social Media For Emergency Response Communications
Social Media For Emergency Response Communications
BWEST Interactive
DSLs в Perl
DSLs в Perl
Ruslan Zakirov
Katrin Moeseler The Use Of Podcasting In Education
Katrin Moeseler The Use Of Podcasting In Education
guest56229b9
Saanich Parks & Recreation, Dec 8, 2011
Saanich Parks & Recreation, Dec 8, 2011
BWEST Interactive
Mocktail '08'
Mocktail '08'
Grace Underdown
Vireb may10
Vireb may10
BWEST Interactive
Open source бизнес и perl внутри
Open source бизнес и perl внутри
Ruslan Zakirov
Devel::PPAP
Devel::PPAP
Ruslan Zakirov
Destacado
(9)
W200 Powerpoint
W200 Powerpoint
Social Media For Emergency Response Communications
Social Media For Emergency Response Communications
DSLs в Perl
DSLs в Perl
Katrin Moeseler The Use Of Podcasting In Education
Katrin Moeseler The Use Of Podcasting In Education
Saanich Parks & Recreation, Dec 8, 2011
Saanich Parks & Recreation, Dec 8, 2011
Mocktail '08'
Mocktail '08'
Vireb may10
Vireb may10
Open source бизнес и perl внутри
Open source бизнес и perl внутри
Devel::PPAP
Devel::PPAP
Similar a Re Inventing Query Language
Python - Getting to the Essence - Points.com - Dave Park
Python - Getting to the Essence - Points.com - Dave Park
pointstechgeeks
Writing Apps the Google-y Way
Writing Apps the Google-y Way
Pamela Fox
Antlr V3
Antlr V3
guest5024494
Streams of information - Chicago crystal language monthly meetup
Streams of information - Chicago crystal language monthly meetup
Brian Cardiff
Plone For Developers - World Plone Day, 2009
Plone For Developers - World Plone Day, 2009
Core Software Group
Addmi 10.5-basic query-language
Addmi 10.5-basic query-language
odanyboy
Writing Apps the Google-y Way (Brisbane)
Writing Apps the Google-y Way (Brisbane)
Pamela Fox
Mongokit presentation mongofr-2010
Mongokit presentation mongofr-2010
namlook
The Kotlin Programming Language
The Kotlin Programming Language
intelliyole
C to perl binding
C to perl binding
Shmuel Fomberg
Php Sq Lite
Php Sq Lite
mussawir20
Design Patterns in Ruby
Design Patterns in Ruby
Aleksander Dąbrowski
IRC Chat snippets as presentations
IRC Chat snippets as presentations
Multipoint Thoughts
PHP MySQL
PHP MySQL
Md. Sirajus Salayhin
P H P Part I I, By Kian
P H P Part I I, By Kian
phelios
PostThis
PostThis
testingphase
"Lego Programming" with Lorzy
"Lego Programming" with Lorzy
clkao
My First Rails Plugin - Usertext
My First Rails Plugin - Usertext
frankieroberto
Effective Java - Still Effective After All These Years
Effective Java - Still Effective After All These Years
Marakana Inc.
Ruby on Rails: Tasty Burgers
Ruby on Rails: Tasty Burgers
Aaron Patterson
Similar a Re Inventing Query Language
(20)
Python - Getting to the Essence - Points.com - Dave Park
Python - Getting to the Essence - Points.com - Dave Park
Writing Apps the Google-y Way
Writing Apps the Google-y Way
Antlr V3
Antlr V3
Streams of information - Chicago crystal language monthly meetup
Streams of information - Chicago crystal language monthly meetup
Plone For Developers - World Plone Day, 2009
Plone For Developers - World Plone Day, 2009
Addmi 10.5-basic query-language
Addmi 10.5-basic query-language
Writing Apps the Google-y Way (Brisbane)
Writing Apps the Google-y Way (Brisbane)
Mongokit presentation mongofr-2010
Mongokit presentation mongofr-2010
The Kotlin Programming Language
The Kotlin Programming Language
C to perl binding
C to perl binding
Php Sq Lite
Php Sq Lite
Design Patterns in Ruby
Design Patterns in Ruby
IRC Chat snippets as presentations
IRC Chat snippets as presentations
PHP MySQL
PHP MySQL
P H P Part I I, By Kian
P H P Part I I, By Kian
PostThis
PostThis
"Lego Programming" with Lorzy
"Lego Programming" with Lorzy
My First Rails Plugin - Usertext
My First Rails Plugin - Usertext
Effective Java - Still Effective After All These Years
Effective Java - Still Effective After All These Years
Ruby on Rails: Tasty Burgers
Ruby on Rails: Tasty Burgers
Último
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
Puma Security, LLC
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
HampshireHUG
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
wesley chun
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
apidays
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
Michael W. Hawkins
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
Enterprise Knowledge
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
Enterprise Knowledge
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
Earley Information Science
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
Malak Abu Hammad
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
hans926745
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Katpro Technologies
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
Radu Cotescu
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
Anna Loughnan Colquhoun
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Drew Madelung
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
naman860154
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
Delhi Call girls
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Igalia
How to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
naman860154
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Roshan Dwivedi
Último
(20)
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
How to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Re Inventing Query Language
1.
Re-inventing query language
Ruslan Zakirov < [email_address] > YAPC::EU Aug 2009
2.
Queries
3.
Queries select *
from U where ...
4.
Queries SQL
5.
Queries S...? Query
Language
6.
SQL Simple?
7.
SQL Small?
8.
SQL Solid?
9.
SQL What does
S. stand for?
10.
SQL (may be)
Stupid
11.
SQL (may be)
Suckish
12.
Jifty::DBI
13.
Jifty::DBI ORM for
Jifty
14.
Jifty::DBI Records Collections
15.
tisql
16.
tisql ti-skull
17.
tisql Query Language
18.
tisql String-centric
19.
Why string? Serialization
20.
Why string? Typing
21.
Why string? CLI
22.
Why string? API
23.
Syntax basics
24.
Basics .foo =
'str' OR ( .baz > 10 )
25.
Basics AND OR
( ) ' "
26.
Basics [!]=, [><]=?
[NOT] LIKE IS [NOT] NULL
27.
Jifty::DBI Relations
28.
Jifty::DBI (relations) refers
to Foo [by a_column]
29.
Jifty::DBI (relations) refers_to
FooCollection by a_column
30.
Jifty::DBI (relations) Named
31.
tisql relations .foo.bar.baz
= 'x'
32.
tisql relations .tags.used_by.id
= $id
33.
tisql relations .tag.value
!= 'foo'
34.
Operation Modifiers
35.
Operation Modifiers has
has no
36.
Operation Modifiers has
[no] .foo.bar <=> .foo.bar.id is [not] null
37.
Operation Modifiers has
no .foo.bar = 'baz' <=> .foo.bar != 'baz'
38.
Operation Modifiers has
no .foo.bar != 'baz' has .foo.bar != 'baz'
39.
No joins!?
40.
[no] joins column
foo => refers_to Foo
41.
[no] joins …
by tisql '...'
42.
[no] joins column
attrs =>... by tisql "attrs.model = 'User' AND attrs.record = .id"
43.
Combining things
44.
Combining .members.first =
'John' AND .members.last = 'Doe'
45.
Combining (John Doe)
(John S., D. Doe)
46.
Combining 1. Aliases
47.
Combining FROM .members
AS member WHERE member.first = 'John' AND member.last = 'Doe'
48.
Combining 2. Placeholders
49.
Combining column members
=> … by tisql ' … AND members.first = %f '
50.
Combining has .members
{first => 'John'} {last => 'Doe'}
51.
Combining Idea! Any
column!
52.
Strings suck
53.
Quote
54.
API
55.
API binding
56.
API ->tisql('.foo =
?', «bar»);
57.
API Q and
C functions
58.
API overload
59.
API Q(...) |
Q(...) Q(...) & Q(...)
60.
Boring
61.
Other Query Languages
62.
Other QLs from:john
(to:me OR cc:me) asshole
63.
Other QLs Parse
64.
Other QLs Parse
::BooleanLogic
65.
Other QLs callbacks
based
66.
Other QLs default
struct
67.
Other QLs processing
68.
Cool things
69.
cool things joins
bundling
70.
cool things (tag:foo
OR tag:bar) tag:zoo
71.
cool things joins
merging
72.
cool things .a.b.c.col
= 'x' AND .a.b.c.d.col = 'y'
73.
cool things subset
extraction
74.
cool things subject:x
!tag:foo tag:bar
75.
cool things subject:x
76.
Where?
77.
78.
79.
the:end
80.
Questions?
81.
Speak slow and
loud
82.
Not thaaaat slow
Descargar ahora