Upgrade to Pro — share decks privately, control downloads, hide ads and more …

【PHPerKaigi2020】ぼくのかんがえたさいつよQueryBuilder

ICKX
February 10, 2020

 【PHPerKaigi2020】ぼくのかんがえたさいつよQueryBuilder

PHPerKaigi2020で発表した『ぼくのかんがえたさいつよQueryBuilder』の資料です。
『Y』状態の実際に動くコードは https://github.com/y-fw3/io で公開しています。

ICKX

February 10, 2020
Tweet

More Decks by ICKX

Other Decks in Technology

Transcript









  1. View full-size slide






  2. 次(予定)

    View full-size slide





  3. View full-size slide








  4. View full-size slide







  5. View full-size slide

  6. ガチガチに検証済みの
    前提で変数の意味に
    合わせるもよし
    呼び出し側で制約をかける
    実装をしてもよし

    View full-size slide

  7. defaultの用に引数で
    表現し難い値も素直に利用可能
    算術演算もRAWに頼らず
    かける

    View full-size slide

  8. RAW TEXT中に有効なプレースホルダを設定可能
    続く引数で任意の変数を与えることができる

    View full-size slide

  9. 一度生成したSELECT文を
    そのまま再利用

    View full-size slide

  10. 構築後クエリ
    検索条件値:insert時は空配列
    検索条件値:insert時は空配列
    挿入・更新値:select, delte時は空配列

    View full-size slide





  11. View full-size slide

  12. SELECT statement
    SELECT clause
    SELECT Column Collection
    Column Expression
    Column Expression
    FROM clause
    Table Reference Expression
    WHERE clause
    WHERE Collection
    WHERE Predicate
    expression operator expression
    • STATEMENT:文
    ステートメント
    • CLAUSE:句
    クロース
    • COLLECTION
    コレクション
    • PREDICATE:述部
    プレディケイト
    • EXPRESSION:式
    エクスプレッション

    View full-size slide





  13. View full-size slide







  14. View full-size slide



  15. はじめてのUnit Testに好適!

    View full-size slide

  16. テスト用クエリ考案


    経験者募集

    View full-size slide







  17. レビューします
    PHPの学習にもお勧め

    View full-size slide

  18. 配列につめて
    Implodeでどーん

    View full-size slide





  19. View full-size slide