hakeの日記

Windows環境でプログラミングの勉強をしています。

database

EXCEL VBAメモ - SQLite3データベースのアクセス(SQLiteForExcel使用)

ExcelからODBCドライバをインストールせずにSQLite3へアクセスする方法 準備(64bit環境の場合) Releases · govert/SQLiteForExcel · GitHub からSQLite For Excelの最新版を入手(現時点ではSQLiteForExcel-1.0.zip)しアーカイブの中から、SQLiteForExcel_6…

EXCEL VBAメモ - SQLite3データベースのアクセス(SQLite ODBC使用)

ExcelからODBC経由でSQLite3へアクセスする方法 準備 SQLite ODBC Driver からSQLite ODBC Driverをダウンロードしてインストールする。64bit版はsqliteodbc_w64.exe(現時点の最新はVer.0.9996) インストールを行うとsqlite3.dllがC:\Windows\System32に見つ…

SQLite - ウィンドウ関数

特定のレコード範囲をウィンドウ設定して、そのウィンドウに対して操作を行う機能。 sqlite> select * from AAA; tt ii ---------- ---------- aa 6 bb 5 aa 4 bb 3 aa 2 bb 1 OVER句

SQLite - 重複の除去(DISTINCT)

指定したカラムで重複ているものを除去して出力する sqlite> select * from AAA; tt ii rr ---------- ---------- ---------- aaa 1 1.0 aaa 1 2.0 aaa 2 3.0 aaa 2 4.0 sqlite> select distinct tt from AAA; tt ---------- aaa sqlite> select distinct tt…

SQLite - 出力レコード数の制限(LIMIT, OFFSET)

LIMIT句で出力するレコード数を、OFFSET句で最初からスキップするレコード数を指定する。 sqlite> select * from AAA; tt rr ---------- ---------- aaa 8.0 bbb 7.0 ccc 6.0 ddd 5.0 aaa 4.0 bbb 3.0 ccc 2.0 ddd 1.0 sqlite> select * from AAA limit 1; t…

SQLite - 出力のソート(ORDER BY)

指定したカラムを昇順(ASC,省略可)または降順(DESC)でソートして出力する。 sqlite> select * from AAA; tt rr ---------- ---------- aaa 8.0 bbb 7.0 ccc 6.0 ddd 5.0 aaa 4.0 bbb 3.0 ccc 2.0 ddd 1.0 sqlite> select * from AAA order by tt asc, rr…

SQLite - カラム方向の結合(JOIN)

2つのテーブルの指定したカラムで結合することで2つのテーブルをカラム方向に広げたひとつのテーブルとして扱う sqlite> select * from AAA; tt ii ---------- ---------- aaa 1 bbb 2 ccc 3 ddd 4 sqlite> select * from BBB; ii rr ---------- ----------…

SQLite - グループ化(GROUP BY)

指定したカラム毎にグループ化して、そのグループ内で処理を行う sqlite> select * from AAA; tt cate val ---------- ---------- ---------- aaa A 1.0 bbb A 2.0 aaa A 3.0 bbb B 4.0 aaa B 5.0 bbb B 6.0 aaa C 7.0 bbb C 8.0 selectにカラム名のみ記述し…

SQLite - 集計関数

sqlite> select * from AAA; ii tt rr ---------- ---------- ---------- 1 aaa 1.0 2 bbb 2.0 3 ccc 3.0 ddd 4.0 5 eee SUMとTOTAL

SQLite - WHERE句

sqlite> select * from AAA; ii tt ---------- ---------- 1 aaa bbb 3 ccc 4 5 ddd 6 eee fff 8 9 ggg 一致、比較、否定

SQLite - ROWIDとカラム制約事項

ROWID 特に指定しなくても、レコードをユニークに決定するROWIDというinteger型のカラムが内部的に付加される。 sqlite> create table AAA(ii integer, tt text); sqlite> insert into AAA values(10, 'aaa'),(20, 'bbb'); sqlite> select rowid,* from AAA;…

SQLiteを使う

個人や小規模のデータベースで使用するSQLiteの勉強 作成されるデータベースファイルは一個なので手軽に管理できる。 入手先 以下のサイトのDownloadから入手する。現時点のバージョンは3.25.3。 Windows環境でプログラムからDLLを使用する場合は、sqlite-dl…

Go言語 - データベースを使用する - sqlite3

go言語でsqlite3を使用してみる。 Windows 64bitで下記の方法だと、コンパイル時に何故かgccを要求されます。コンパイルに通常よりも時間がかかるのでgccを利用した何かを行っている? なお作成されたexeファイルの実行はgcc環境がなくてもOKでした。 入手先…

EXCEL VBA - CSVファイルをSQLで検索

CSVファイルの内容をSQL文で検索する方法を知ったのでメモ。(確認環境 Windows10 64bit, Excel2013) data.csv No,名前,色,値 1,イチゴ,赤,50 2,リンゴ,赤,100 3,メロン,緑,300 4,ブドウ,紫,200 5,オレンジ,オレンジ,150 色が赤いものを抽出 Sub foo() myDIR …