X



トップページDB@2ch掲示板
1002コメント312KB
SQLite Part.10
■ このスレッドは過去ログ倉庫に格納されています
06796752017/11/30(木) 05:52:18.47ID:???
>>676, 677
え?ほんと?
おぼろげな記憶だけど、

SELECT ...
FROM ...
WHERE xxx IN (SELECT...)

とかできなかったような・・・
0681NAME IS NULL2017/11/30(木) 07:15:36.60ID:???
>>679
そのクエリならできる。まさに俺が現在使っているし。
0682NAME IS NULL2017/11/30(木) 08:35:09.19ID:???
>>680
敵性言語で書かれている情報など読みません。
0683NAME IS NULL2017/11/30(木) 09:14:35.55ID:???
>>679
余裕で書けるのだが、何で出来ないと思ったのか聞いてみたい
0685NAME IS NULL2017/11/30(木) 12:06:22.71ID:???
一回試してタイプミスで文法エラーが出たのに
できないと思い込むケースはあるかもね
できないだろう、という先入観があるとどうしてもね
0686NAME IS NULL2017/11/30(木) 12:49:33.88ID:???
>>682
じゃあ敵が書いたプログラムなんか使うなよ w
06876752017/11/30(木) 18:22:37.58ID:???
かなり前のことなので、残念ながら具体的なクエリは忘れてしまいました。
ただ、俺のメインはPostgreSQLなので、それに比べてSQLiteはSQLを書く
自由度がかなり劣っている印象を受けたのは事実。

思い違いかもしれないので、また今度触ってみるよ。
誤った知識でSQLiteのNG情報を流布しては申し訳ないしね。
0688NAME IS NULL2017/11/30(木) 19:42:18.44ID:ATTMxwZh
そんなに影響力ないから気にすんなw
0689NAME IS NULL2017/12/29(金) 11:06:14.25ID:dtNZwIie
誰でも簡単にパソコン1台で稼げる方法など
参考までに、
⇒ 『宮本のゴウリエセレレ』 というブログで見ることができるらしいです。

グーグル検索⇒『宮本のゴウリエセレレ』

M9UL2UMY6S
0692NAME IS NULL2018/02/14(水) 13:24:45.81ID:???
☆ 日本の、改憲をしましょう。現在、衆議員と参議院の両院で、
改憲議員が3分の2を超えております。『憲法改正国民投票法』、
でググってみてください。国会の発議はすでに可能です。
平和は勝ち取るものです。お願い致します。☆☆
0693NAME IS NULL2018/02/26(月) 21:26:49.95ID:???
SQLite使おうと思って初めてスレきたけど
さすがに副問い合わせできないDBとか存在価値ねーよw
0694NAME IS NULL2018/02/26(月) 21:35:59.73ID:???
えっ?
0695NAME IS NULL2018/02/26(月) 21:48:49.59ID:???
>>693
普通に使えるけどウェブ検索もろくに使えない人には無理だろうね
0697NAME IS NULL2018/03/04(日) 16:11:01.28ID:???
sqliteで足りないのはwindow関数くらいだと思ってる
0698NAME IS NULL2018/03/10(土) 09:59:47.54ID:rTcSh0Y2
Entity Framework Coreでマイグレーションが出来ない
これじゃ気軽にカラムの追加削除も出来やしない

Firebirdにするか
0700NAME IS NULL2018/03/10(土) 12:22:14.67ID:???
M$な人はaccessじゃねーの
0701NAME IS NULL2018/03/10(土) 12:51:13.03ID:mPREb+86
AccessってWindowsでもオワコンじゃないの?
0702NAME IS NULL2018/03/10(土) 16:14:51.18ID:???
Accessは帳票の入出力が簡単に作れるから現場ではまだよく使われてる
あとSQLiteに相当するデータベースエンジンだけならただでダウンロードできる
0703NAME IS NULL2018/03/12(月) 23:33:30.65ID:???
SQLserverとoleDBでネイティブ接続できる上に帳票やフォームが気軽に作れるのでAccessは神だったが、
OleDb廃止してadp作れなくなったaccess2013からは普通に糞。
単独で考えたときのjetSQLはさらに糞。
0704NAME IS NULL2018/03/12(月) 23:41:55.61ID:bDBXx0nx
SIじゃない事務系の職場で2007のUI変更は混乱起きたんじゃないかなあ
速度を気にしなければSQLの中に標準モジュールの関数を自由に使えるって結構すごい
0705NAME IS NULL2018/03/26(月) 17:59:27.14ID:???
sqli ver3てのはsqli3てことになるのですか?
ubuntuにsqliいれたいのですが3がはいってしまいます。
0706NAME IS NULL2018/03/26(月) 23:58:46.92ID:???
3でOK。
0708NAME IS NULL2018/04/29(日) 14:34:57.52ID:???
ubuntuにインストールしました。
コンソールからcreate ... と入力した場合、tableファイルはどこのディレクトリに作られるのでしょうか?
0709NAME IS NULL2018/04/29(日) 21:48:49.51ID:???
情報が足りなすぎるけどエスパーするとインメモリDBで実行してるからどこにも作られてない。
0710NAME IS NULL2018/04/30(月) 09:37:12.31ID:???
エスパー入門問題
0711NAME IS NULL2018/05/26(土) 13:22:27.01ID:???
何も指定してないとメモリ上に作られる、けどその後の流れ以下でOK?

datasouce指定なしor:memory:でインメモリdbで実行されて
createでtableができる

その後いったん接続切れると(C#だとconnectionつくったusingブロックを出ると)メモリ上のdbも消える
接続が切れなければ、datasouce指定なしor:memory:で、作ったdbを操作できる
接続が確立されてる状態だと、ほかconnectionから接続はできない

ただし、最初db作るときにcache=sharedで指定してやれば、接続が続く限り
「もう一つのconnectionを作って」そこからdb操作できる

このsharedの挙動がよくわからん
0713NAME IS NULL2018/05/26(土) 22:44:11.55ID:???
>>712
すまん、本家は一応目は通したんだけど
SQLiteというよりはC#での組み方を把握してないみたいだ
とはいえもう一度よく見てみるよ、ありがとう
0714NAME IS NULL2018/05/28(月) 20:25:00.22ID:???
select name, (suryo * tanka) as '合計'
from hoge;
はできるんですがこの合計の総和が取れずに困ってます。
どのようにしたらいいでしょうか?
0715NAME IS NULL2018/05/28(月) 20:48:30.06ID:???
select name, sum(suryo * tanka) as '総和' from hoge group by name
0716NAME IS NULL2018/05/28(月) 22:41:56.84ID:???
なるほど、このようにするんですね。
ありがとうございます。
0717NAME IS NULL2018/05/29(火) 12:29:45.70ID:???
このレベルのことを自力で解決できずに5chで聞くなんて
日本のプログラマーは素晴らしい
0718NAME IS NULL2018/05/29(火) 12:31:34.79ID:7/O8R114
>>717←このレベルのことを自力で解決できて誇らしいプログラマー
0719NAME IS NULL2018/05/29(火) 12:40:23.08ID:???
日本のプログラマーの低レベル化はとどまる事を知らず。
0720NAME IS NULL2018/05/29(火) 14:33:26.96ID:???
自力で解決する時間は自分持ちで
時間がかかると切られるのが日本
0721NAME IS NULL2018/05/29(火) 18:52:09.96ID:???
英数字を全角で書く奴は何をやってもダメ
0722NAME IS NULL2018/05/29(火) 18:57:20.30ID:???
と、言ってるおじいちゃんが未だにいる日本
0723NAME IS NULL2018/05/29(火) 20:49:31.56ID:???
基本的なSQLくらいは勉強してから使った方が良いけどね
0724NAME IS NULL2018/05/29(火) 23:23:10.95ID:???
>>722
いやさすがに俺の拙い経験でも>>721は正解だわ
あとカタカナを半角で書く奴も追加で
0725NAME IS NULL2018/05/30(水) 08:38:56.61ID:???
>>724
今のフォントだと半角カタカナは汚いがWin95の頃は普通に使われてた。今は半角カタカナを使う必要はない。

駄目なヤツは全角英数字と半角英数字の混在してるヤツ。1つの単語の中で混ぜるヤツは最悪。
0727NAME IS NULL2018/06/09(土) 10:21:54.43ID:???
PRAGMA journal_mode=OFF; PRAGMA synchronous=OFFで
VACUUMも速くなることに今更気づいた
0728NAME IS NULL2018/06/14(木) 14:28:34.78ID:???
create temp tableで作られたtableにデータを入れるときって
データどこに保存されてるの?
例えばconnection作るときにmemoryとかdbファイル指定したとして
そこにぶち込んでるわけじゃないっぽいんだけど
せっかくin-memory dbで作ってもよそに一時ファイル作って書き込んでるんだとしたら無駄だなとおもい
それともtempってした時点でdbファイルを指定してもメモリ上に、
in-memoryでもそのメモリ上のmemory(ややこしいなw)とは別のメモリ領域にぶっ込んでるのかな
0729NAME IS NULL2018/06/14(木) 20:07:04.71ID:???
>>728
コネクションがmemoryならテンポラリーもmomory
0730NAME IS NULL2018/06/14(木) 22:32:03.65ID:???
>>729
テンポラリに入れてから、そいつを加工してテンポラリじゃないデータに入れてるんだけど
テンポラリにデータぶっ込んでる時はタスクマネージャのメモリ使用量が増えないんだよね
visual studioのプロセスメモリも増えてない
0731NAME IS NULL2018/06/15(金) 00:27:55.61ID:???
なんでもいいから、だれか正規表現のdll作ってくれよー
0732NAME IS NULL2018/06/15(金) 07:49:38.53ID:???
作ったよ
0733NAME IS NULL2018/06/15(金) 08:34:36.31ID:???
>>730
タスクマネージャのデフォのメモリー表示だと全部のメモリー状況は出ないはず。
表示列を増やしてみれば?
0734NAME IS NULL2018/06/15(金) 23:28:07.12ID:???
最初に確保したキャパで収まってんじゃないの?
メモリがレコードに完全に比例するような、非効率的な実装なんかしないだろうし。
0735NAME IS NULL2018/06/15(金) 23:46:44.50ID:???
>>733
どゆことー?
一応自己解決
テンポラリのディスク領域に保存してるみたいだ
windowsの場合いわゆる仮想ディスク、だからメモリが増えてなかった
しかも仮想ディスクはm2のSSDなのでメモリ上に作ってもtempで作っても
速度あんまりかわらんかった

https://www.sqlite.org/tempfiles.html
https://www.sqlite.org/vfs.html

2,3回テストしただけだけど、500Mのテキスト軽く加工してぶっ込むのに
not tempでメモリ上につくって24秒
tempでつくって27秒
0736NAME IS NULL2018/06/16(土) 01:53:50.34ID:???
>>735
微妙に早とちりしてた
PRAGMAで設定しないなら環境変数のTEMP_Pathに"etilqs_*"ってファイルが作られる
あと仮想ディスクじゃなくて仮想ファイルシステムだ
メモリに余裕があればcreate temp tableすることないかも
0737NAME IS NULL2018/06/20(水) 01:47:13.13ID:???
page sizeとcache sizeいくつにしてますか?
page sizeのdefaultが1024から4096に変わったりしてるし
処理するデータによっても変わるし、PC環境でも最適が変わるんだろうけど
なんか基準みたいなのあれば教えてください
fieldが10位なら***みたいな

https://blog.devart.com/increasing-sqlite-performance.html
2016年記事でこんな感じだけど
増やせば増やすほどいいってものでもないんですね
0738NAME IS NULL2018/06/25(月) 21:04:53.90ID:???
>>737
cache sizeは200000くらいにしとけってどこか海外のサイトでみた
基準は書いてるとおり状況によって変わるとしか
0739NAME IS NULL2018/07/07(土) 15:51:37.40ID:r3W4+i36
この手のdb組み合わせて作るシステムってクエリ文コード中に書くの?
それとも外部テキストとか読み込むの?
0740NAME IS NULL2018/07/08(日) 18:59:47.36ID:???
好き好きやろ。
よっぽどでなければ、わざわざ外部テキストにはしないんじゃないのとは思うが。
0741NAME IS NULL2018/07/08(日) 19:47:07.48ID:???
>>739
どういうライブラリやフレームワークを使っているかによる
SQL文を文字列としてプログラム内部に組み込むのは
原始的なライブラリに多い
0742NAME IS NULL2018/07/09(月) 21:11:23.36ID:+WAobpIw
なるへそ
コードに直書きしてるサンプルみてて、改行時のスペース一つみすったらこけるなっておもったが
当然というか、いろいろ方法はあるんやね
0743NAME IS NULL2018/07/10(火) 05:08:16.71ID:???
次のバージョンでついにwindow関数入るのか
もう望むもの無いな
0745NAME IS NULL2018/07/25(水) 23:00:33.50ID:???
regexpは初めから組み込み側言語の関数を組みこんで使ってくれってスタンスだからな、その方が親和性が取れるから本当はいいんだろう。
たから今更無いだろうよ。
別にそれで不便してないし。
0746NAME IS NULL2018/08/22(水) 15:09:41.10ID:???
出力モードをcolumnにしてselectで出力したのに1行目にカラムが表示されないのは何が原因でしょうか?
0747NAME IS NULL2018/08/22(水) 15:12:17.74ID:???
自己レス
.header onが必要でした
0748NAME IS NULL2018/09/12(水) 06:32:04.96ID:???
window関数って何に使えるのでつか?
0749NAME IS NULL2018/09/12(水) 15:26:15.14ID:???
区間集計
0750NAME IS NULL2018/09/12(水) 20:06:53.29ID:???
区間集計?
0751NAME IS NULL2018/09/13(木) 00:02:16.91ID:???
一般のプログラミング言語みたいに
ループを回してデータを順番に見ながら計算を進めていければいいのに……
と思ったときに使えます。
0752NAME IS NULL2018/09/13(木) 19:41:18.77ID:???
解説ありがとうございます。

GROUP BY でまとめて集計関数使うのではだめなのかなぁとか思ったんですが・・・
まずは調べて勉強します。

有難うございました。
0753NAME IS NULL2018/09/13(木) 21:44:39.64ID:???
GROUP BYと通常の集計でも大抵のことはできますが
自己結合やサブクエリの嵐になってその遅さに悩んだら
ウィンドウ関数を思い出してあげてください
0754NAME IS NULL2018/09/13(木) 21:50:01.28ID:wh5zrV2Z
>>753
遅くなったら遅さと正面から向きあうんや
困難に目をそむけるんやない
0755NAME IS NULL2018/09/13(木) 22:54:43.13ID:???
不可能を可能にする男登場
0756NAME IS NULL2018/09/13(木) 23:30:34.62ID:???
>>752
ちなみに、いまだにMySQLにはウインドウ関数がない。
インデックスとかサマリとかでなんとでもできるからだろ。
0758NAME IS NULL2018/09/16(日) 17:45:15.65ID:Mx+Utd0W
おお!!!
0762NAME IS NULL2018/11/02(金) 07:21:05.42ID:???
SQL文の最後はセミコロンが必要らしいんだけど
pythonから使う分には不要であってますか?

sql="select * from hoge"  ←セミコロンなし
0763NAME IS NULL2018/11/02(金) 08:41:03.68ID:???
>>762
1文だけだと不要だよ
0764NAME IS NULL2018/11/02(金) 10:21:47.91ID:???
最後に必要なんじゃなくて、文の区切り。
その話はきっとC言語の文とかと混乱してる。
0765NAME IS NULL2018/11/02(金) 18:30:48.05ID:???
ありがとう
不要ということで。

sqlite セミコロンでぐぐると忘れないようにしまようってのが目についたので聞いてみましたw
0766NAME IS NULL2018/11/02(金) 20:44:28.50ID:???
>>765
sqliteのドキュメントをちゃんと読もうよ。
英語だからワカンナイは理由にならない。
6年以上も英語を勉強してるだろ?
ワカンナイって言うやつは税金どろぼうだ。
0767NAME IS NULL2018/11/02(金) 22:53:35.88ID:???
>>766
それはちょっと厳しいやろ。
関数とかの説明なら英語でもなんとかなっても、文法はかなり難しいで。
概要ならともかく、詳細はなかなか。
0768NAME IS NULL2018/11/03(土) 08:13:47.38ID:???
>>766
SQLiteや英語よりも、まず先に社会性を学べ
0769NAME IS NULL2018/11/03(土) 08:16:28.22ID:???
出る杭を打ち込む悪しき文化だねえ
0770NAME IS NULL2018/11/03(土) 08:17:37.50ID:???
または、議論の本題より揚げ足取りになる文化
0771NAME IS NULL2018/11/05(月) 14:27:21.80ID:???
>>767
sqliteの公式ドキュメントで使ってる英文法は難しく無いだろう?
0772NAME IS NULL2018/11/05(月) 17:48:29.01ID:???
>>771
そっちの文法じゃねえ。SQLの文法。
「文法」を「関数」と並列に並べてるのが読めないのか。

英語よりも日本語を読めるようになったほうがいいぞ。
0773NAME IS NULL2018/11/05(月) 19:34:14.05ID:???
SQLの文法って略さずに書かないと今回の例は分かりにくいよ
どっちとも取れる文章で文句言ったってしゃあないっしょ
0776NAME IS NULL2018/11/05(月) 23:21:54.05ID:???
>>774
英語なんて見るのも嫌ってヤツが少なからず居るからそこまでたどり着けない。
0777NAME IS NULL2018/11/06(火) 03:20:55.95ID:???
>>774
わざわざKYを自慢せんでもええで。
その図が読めるのは、英語を読めるよりも少ないやろ。
0778NAME IS NULL2018/11/06(火) 04:59:35.05ID:???
>>776-777
向学心の無い奴に何を見せても無駄だわな
バカアピール乙 w
0779NAME IS NULL2018/11/06(火) 06:12:45.76ID:???
>>777
オラクルでも使ってるし、SQLプログラマーとして読めないのはいかんだろ。
■ このスレッドは過去ログ倉庫に格納されています

ニューススポーツなんでも実況