タグ

SQLに関するgam-22のブックマーク (9)

  • BigQueryのクエリで定数を定義して複数箇所で使いたい - 唯物是真 @Scaled_Wurm

    BigQueryでクエリを書くときに、同じ日付や倍率、円周率などの定数をクエリの複数箇所で使いたい時があります 単純に複数箇所に書くと修正するときに大変なので、共通のものを複数箇所で使いまわす方法を調べてみました UDF(ユーザー定義関数)による方法 定数を返す関数を定義して使う方法が一番簡単です ユーザー定義の関数  |  BigQuery のドキュメント  |  Google Cloud Platform Standard SQLのUDFは以下のような形式で書けます CREATE TEMPORARY FUNCTION 関数名(引数名 型, ...) AS (使いたいSQL); これを使うと以下のように定数として使うことができて、修正したいときは関数の定義だけを変えればよくなります #StandardSQL CREATE TEMPORARY FUNCTION RATE1() AS (0.

    BigQueryのクエリで定数を定義して複数箇所で使いたい - 唯物是真 @Scaled_Wurm
    gam-22
    gam-22 2019/05/16
    BigQuery では定数や変数は定義できないので、ユーザ定義関数を代替につかうのが良いらしい
  • SQL

    京大マイコンクラブが教える絶対に失敗しない言語の選び方 キミには SQL がオススメだ! チューリング完全 SQLはチューリング完全なので,他の言語と同様に実用的なプログラムを記述することができます. データベースと連携できる SQLはデータベースに問い合わせる機能も持っているため,データベース上のデータを用いたプログラムを簡単に記述することができます. サンプルコード 次のコードはフィボナッチ数列の第10項までを表示するコードです. 実行結果 WITH RECURSIVE fib(x, y, i) AS ( VALUES(0, 1, 1) UNION ALL SELECT y, x + y, i + 1 FROM fib LIMIT 1477 ) SELECT x from fib WHERE i <= 10; Tweet

    SQL
    gam-22
    gam-22 2017/04/02
    へぇ〜“SQLはチューリング完全なので,他の言語と同様に実用的なプログラムを記述することができます. ”
  • サービス終了のお知らせ

    サービス終了のお知らせ いつもYahoo! JAPANのサービスをご利用いただき誠にありがとうございます。 お客様がアクセスされたサービスは日までにサービスを終了いたしました。 今後ともYahoo! JAPANのサービスをご愛顧くださいますよう、よろしくお願いいたします。

    gam-22
    gam-22 2015/10/05
    この辺を実践するだけでISUCON5の予選で1万点超えた。
  • Goのdatabase/sql.Stmtのスケーラビリティを改善しました : DSAS開発者の部屋

    先日、 Goに初めて私のパッチが取り込まれ 、コントリビュータに仲間入りしました。 このパッチは、 database/sql.Stmt をヘビーに使った時に性能がだいたい16コア以上のコア数にスケールしないという問題を解決するものです。 こういった問題をどうやって調査するのかと、Goにパッチが取り込まれるまでの手順を紹介します。 背景 私は TechEmpower の FrameworkBenchmarks という、いろんな言語/フレームワークで同一のアプリを作ってベンチマークするというプロジェクトで、主にPython関連のメンテナをしています。 Goにも興味があるので、Ginというフレームワークを追加したりコードレビューに参加したりしています。 2014-05-01 に行われた前回のベンチマーク Round 9 では、 PEAK Hosting が実行環境に加わりました。この環境は、デュ

    Goのdatabase/sql.Stmtのスケーラビリティを改善しました : DSAS開発者の部屋
  • オトコのソートテクニック2008

    今日は仕事納めだったので、一年の締めくくりとしてMySQLにおけるソートの話でもしようと思う。 インデックスを利用しないクエリで最もよく見かけるもののひとつは、ORDER BYを用いたソート処理だろう。もし、ソート処理においてインデックスを用いることが出来れば、MySQLは結果を抽出してから結果行をソートするのではなく、インデックス順に行を取り出せば良いので高速にソート処理することが可能になる。特に、LIMIT句やWHERE句を用いて行の絞り込みを行う場合は効果が絶大である。しかし、ひとたびインデックスを利用できない状況に直面すると、たちまちテーブルスキャンが発生して性能が劣化してしまう。 例えば、100万行のレコードを格納したt1というテーブルがあるとする。そのテーブルに対して以下のようなクエリを実行した場合を考えよう。 mysql> SELECT col1, col2 ... colx

    オトコのソートテクニック2008
  • 筑波大学でデータベースの話をしてきました - kuenishi's blog

    筑波大学の川島先生に呼ばれて木、金と情報システム特別講義Dというやつに参加してきた。こんなことになるとは思っていなかったが、あろうことか講師側で呼ばれてしまい、思えば遠くへ来たものだと感慨深い。フリは「RiakとNoSQLの話をしてもらえたら」という非常に自由度の高い内容なので、せっかくなので僕の知っていることを全部詰め込んで話してやろうと思ったら10分延長してさらにスライド10枚分くらいを消化不良で終了という、みっともない感じになってしまった。かなり端折ってポイントだけ説明したので流れが分からず苦労した方も多いと思うが、まあ僕の性格なので許してほしい。データベースの講義をひと通り終えた院生レベルを想定してスライドを作ったので、もしかすると、わりと難しかったり分かりにくかったりするかもしれないので、わからないことがあったら適当に質問してください。 言いたかったことの流れを僕なりにまとめると

    筑波大学でデータベースの話をしてきました - kuenishi's blog
  • 接続文字列の書き方をまとめてみる - しばやん雑記

    内容が古くなってきたので 接続文字列の書き方をまとめてみる(2014 年版) - しばやん雑記 にて Azure にも対応した 2014 年版を公開しました。 毎回、番環境にアップする前に迷うのが SQL Server の接続文字列だったりします。 レンタルサーバでは基的に SQL Server 認証が使われているので書き換える必要があるのですが、Initial Catalog とか Data Source とか意味が分からず、毎回検索してしまうので書き方をまとめておきます。 SQL Server Compact 4.0 <connectionStrings> <add name="(接続文字列名)" connectionString="Data Source=(データベースファイル名)" providerName="System.Data.SqlServerCe.4.0" /> </

    接続文字列の書き方をまとめてみる - しばやん雑記
    gam-22
    gam-22 2013/06/10
    それな"Initial Catalog とか Data Source とか意味が分からず"
  • SQLite関数の使い方

    SQLite3 では集計や日付に関する便利な関数が用意されています。ここでは SQLite3 にて用意されている関数の使い方をサンプルを使いながら解説します。

    SQLite関数の使い方
    gam-22
    gam-22 2012/02/23
  • SQLite/Ruby - Ruby

    軽量・高速なデータベースSQLiteRubyから扱うためのライブラリ。 インストール Windowsの場合 RubyForgeから、 sqlite3-ruby(sqlite3-ruby-x.x.x.zip)をダウンロードする。 ダウンロードしたファイルを展開する。 インストールプログラムを実行する。 ruby setup.rb config ruby setup.rb setup ruby setup.rb install RubyGemsを使う場合 RubyGemsをインストールした後、 次のコマンドを実行する。 gem install sqlite3-ruby SQLiteのインストール SQLite Download Pageから、 sqlitedll-3_x_x.zipをダウンロードする。 ダウンロードしたファイルを展開する。 sqlite.dllをパスの通ったディレクトリにコピ

  • 1