トップページDB@2ch掲示板
1002コメント312KB
SQLite Part.10
■ このスレッドは過去ログ倉庫に格納されています
0287NAME IS NULL
垢版 |
2013/12/12(木) 16:07:36.18ID:???
ODBCドライバ経由でプリコンパイルって使える?
0288NAME IS NULL
垢版 |
2013/12/12(木) 19:10:28.35ID:???
ODBCドライバは知らないけど、少なくともSQLiteに「プリコンパイル」なる機能は無いよ。
0291NAME IS NULL
垢版 |
2013/12/14(土) 17:07:26.68ID:???
ttp://d.hatena.ne.jp/mftech/20100929/1285754844

>/// <summary>
>/// SQL文を実行し、検索結果の第1行第1列を返す
>/// </summary>

> public Object ExecuteScalar(string sql, SQLiteParameter[] parameters)

は、原文
ttp://zhoufoxcn.blog.51cto.com/792419/292670
では

> public Object ExecuteScalar(string sql, IList<SQLiteParameter> parameters)
> {
> using (SQLiteConnection connection = new SQLiteConnection(connectionString))
> {
> using (SQLiteCommand command = new SQLiteCommand(sql, connection))
> {
> if (!(parameters == null || parameters.Count == 0))
> {
> foreach (SQLiteParameter parameter in parameters)
> {
> command.Parameters.Add(parameter);
> }
> }
> return command.ExecuteScalar();
> }
> }
> }
で、
>(注:上面的代&#30721;在2011-07-15日代&#30721;重新&#32534;&#36753;了,参数由SQLiteParameter[] parameters&#21464;&#20026;IList<SQLiteParameter> >parameters,使用范&#22260;更广)

とのこと
0292NAME IS NULL
垢版 |
2013/12/15(日) 03:42:50.78ID:???
何言ってるか分からない
0293NAME IS NULL
垢版 |
2014/01/08(水) 08:46:17.46ID:???
EnumerableRowCollection<DataRow> query =
from row in contacts.AsEnumerable()
where IsContainArr(row[0].ToString(), fig)
select row;

bool IsContainArr(string s, string[] arr)
{
foreach (var a in arr)
{
if (!s.Contains(a)) return false;
}
return true;
}

って、メソッドで用意されてないんかな
0295NAME IS NULL
垢版 |
2014/01/11(土) 15:42:52.85ID:???
いつもmysqlを使っていて、
sqliteを勉強中なのですが。

MySQLの以下のクエリについてなんですが、

INSERT INTO
table
(a, b)
VALUES
(aa, 1), (bb, 2), (cc, 3)
ON DUPLICATE KEY UPDATE b=b+VALUES(b)

同一行が存在しないときは、新しい行をinsert。
存在するときは、既存のbに新しい数値を足した値を入れる。
なお、複数の行を一括で処理したい。

以上の条件で、SQLiteでは同じことをするクエリは書けませんか?
0296NAME IS NULL
垢版 |
2014/01/11(土) 19:25:15.43ID:???
一括で同じことをするクエリはないみたいですが、
一応自己解決しました。では。
0297NAME IS NULL
垢版 |
2014/01/13(月) 15:41:14.71ID:???
自分のことしか考えてない・・・
0298NAME IS NULL
垢版 |
2014/01/13(月) 23:03:34.81ID:???
だってゆとりだもの。
0299NAME IS NULL
垢版 |
2014/01/13(月) 23:09:14.82ID:???
義務教育はぜーんぶ糞
0300NAME IS NULL
垢版 |
2014/01/15(水) 22:19:08.42ID:???
/// <summary>
/// NonQueryList
/// </summary>
/// <param name="sql"></param>
/// <param name="param_arr"></param>
/// <param name="list"></param>
/// <returns></returns>
public static int NonQueryList(string sql, string[] param_arr, List<string[]> list)
{
int records = 0;
try
{
List<SQLiteParameter> parameters = new List<SQLiteParameter>();
using (SQLiteConnection connection = new SQLiteConnection("Data Source=" + DB_FILE))
{
connection.Open();
using (DbTransaction transaction = connection.BeginTransaction())
{
using (SQLiteCommand command = new SQLiteCommand(connection))
{
foreach (string[] line in list)
{
command.CommandText = sql;
for (var i = 0; i < param_arr.Length; i++)
{
command.Parameters.Add(new SQLiteParameter(param_arr[i], line[i] ?? ""));
}

records += command.ExecuteNonQuery();
}
}
transaction.Commit();
}
}
}
catch (System.Exception ex)
{
Console.WriteLine(ex.Message);
return 0;
}
return records;
}
0301NAME IS NULL
垢版 |
2014/01/18(土) 00:46:11.01ID:3tf2egSa
カラムにDateTime型を指定出来るけど
実際は、日付入れるとRealかIntegerかTextが入るよね
エポック秒使うとして最初からInteger指定しとくのと何が変わるの?
0303NAME IS NULL
垢版 |
2014/01/29(水) 22:35:04.57ID:gj57qZ83
株価のDBを1ファイルに収めて使ってきたけど1GB超えてるし
これを銘柄数だけファイルを作っても良いのではと思うようになった

db.open&closeするオーバーヘッドって結構大きいのかな?
分ける事でカラムとIndexを減らせるので1ファイルで見ると速度も上がって容量も減るけど
open&closeが4000回近く増えるから、ここで遅くなると意味ないし

他のプログラム見てると結構分けてるんだよね、4000個も無いけど
どう思いますか?
0304NAME IS NULL
垢版 |
2014/01/29(水) 23:25:07.25ID:???
コネクションプールで良いみたい、ではでは
0305NAME IS NULL
垢版 |
2014/01/30(木) 12:31:35.75ID:???
同じでDBを再利用するならそれ
串刺しはアタッチ
0306NAME IS NULL
垢版 |
2014/02/02(日) 00:41:43.45ID:???
データベースを勉強してみようと思ってます。
少し変な質問ですが、SQLiteはサーバーを必要とせず、
ローカル環境で導入できるということですが、
それならば、MS-Accessと、どう違うのか、いや全然違うのは判るんだけど。
二つを対比して、特徴があれば教えてください。
0307NAME IS NULL
垢版 |
2014/02/02(日) 07:34:40.62ID:???
まず病院へいきましょうね
0308NAME IS NULL
垢版 |
2014/02/02(日) 09:13:21.60ID:???
>>306
> 少し変な質問ですが、SQLiteはサーバーを必要とせず、

と、言う仕組みは同じだよ。
個々の機能とか、Access は DBMS 以外の機能 (フォームとか) があるからそういうところは違うけど、漫然と特徴とか言われても説明しづらい。
0309NAME IS NULL
垢版 |
2014/02/02(日) 12:26:30.19ID:???
>>306
SQLiteは、一般的なSQLを扱うRDB入門(ex.情報処理試験)としては、まったく向いていない。

結局のところ、サーバ型のDBMSから始めるのが、仕組みを理解するには一番良かったりする。
0310NAME IS NULL
垢版 |
2014/02/02(日) 12:34:09.34ID:???
Access は、
データベースエンジンACE + VBA + フォーム + レポート
0311NAME IS NULL
垢版 |
2014/02/02(日) 23:51:02.22ID:???
データベースの何を知りたいんだ
sqliteは少なくともデータベースを知ってる人用のプロダクトだと思うぞ

巷のデータベース入門書でも買って、
ポスグレでもMariaDBでもfirebirdでもいいから普通のRDB入れなさい。
全部ローカルで入れて使えるんだから。
0312NAME IS NULL
垢版 |
2014/02/02(日) 23:53:29.45ID:???
ただの釣りだと思います
0313NAME IS NULL
垢版 |
2014/02/03(月) 00:28:49.09ID:???
いろいろとありがとうございます。
西沢直木さんの本でコマンドを打ってみたりしました。
SQLは初めてですが、いまのところsqliteが扱いやすい(他と実際比べたわけでないけど)
と思いました。

Accessを比較にだしたのは個人的にローカルで株価などの経済データを扱いたいと思ったからです。
特にサーバを必要と感じなかったので、MySQLなどは今のところ考えていません。
ちゃんと説明せず申し訳ないです。概要はわかりましたありがとうございました。
0314NAME IS NULL
垢版 |
2014/02/03(月) 08:27:55.69ID:???
今は中学生が株やるのか
0315NAME IS NULL
垢版 |
2014/02/03(月) 23:57:55.04ID:???
これは、煽ってるんだよな。おそらく。
0316NAME IS NULL
垢版 |
2014/02/04(火) 07:43:15.68ID:???
Current Status

Version 3.8.3 of SQLite is recommended for all new development.
Upgrading from versions 3.7.17, 3.8.0.2, 3.8.1, and 3.8.2 is optional.
Upgrading from all other prior versions of SQLite is recommended.
0317NAME IS NULL
垢版 |
2014/02/04(火) 10:37:12.45ID:???
おい、CTE載ったじゃねーかよ。recursiveも使えるし
素晴らしい!長年の希望がひとつかなった。
valuesも単独で使えるようになってるし、GJ

あとはwindow関数・・・
0318NAME IS NULL
垢版 |
2014/02/04(火) 11:05:12.45ID:???
SQLite3のデータファイルと言うのは、それ自体にバージョンの違いが有るのでしょうか?
それとも個々が持ってるDLLで決まるのですか?
0321NAME IS NULL
垢版 |
2014/02/04(火) 12:50:03.65ID:???
フォーマットが変わるまで何もしなくて大丈夫なんですね
変わればDumpする

ファイルを触るプログラム側にバージョンの違いが有り
Access2013でmdbファイル操作するようなイメージなのかな
0324NAME IS NULL
垢版 |
2014/02/04(火) 17:37:07.20ID:???
The VALUES clause

The phrase "VALUES(expr-list)" means the same thing as "SELECT expr-list".
The phrase "VALUES(expr-list-1),...,(expr-list-N)" means the same thing
as "SELECT expr-list-1 UNION ALL ... UNION ALL SELECT expr-list-N".
There is no advantage to using one form over the other.
Both forms yield the same result and both forms use the same amount of memory and processing time.

There are some restrictions on the use of a VALUES clause that are not shown on the syntax diagrams:

A VALUES clause cannot be followed by ORDER BY or LIMIT.
A VALUES clause cannot be used together with a WITH clause in a simple SELECT.

SQLite Query Language: SELECT
http://sqlite.org/lang_select.html#values
0325NAME IS NULL
垢版 |
2014/02/06(木) 00:39:27.25ID:???
>>314
SQL自体は他のプログラム言語より易しいから、やろうと思えば中学でも習得できるだろ。
株は知らんが。
0326NAME IS NULL
垢版 |
2014/02/07(金) 11:35:14.49ID:???
>>303
実際やってみた
1個のファイル vs 3915個に分割したファイル

俺の予想では分割したほうが遅いだろうと思ってたけど、結果は逆だった
ただし1ファイル(1テーブル)に対して発行する程度の話

InnerJoinしてサブクエリ出すような場合、分割してると出来ないのだが
GoLangでAttachする方法がわかんない、まぁ必須では無いので良いけどね
0327NAME IS NULL
垢版 |
2014/02/07(金) 11:46:47.08ID:???
間違った、1個ファイルの方が全然速い
0328NAME IS NULL
垢版 |
2014/02/07(金) 21:25:06.60ID:???
実際にやってみるのはいいことだけど、結果は当たり前だわな
データファイルがでかくなってどうしようもなくなったら DBMS の機能でファイル分割するべき
0330NAME IS NULL
垢版 |
2014/02/14(金) 16:38:14.53ID:???
質問させて貰いたいんだけど、
SQLiteってファイルで保存されるけど、
それをそのまま他のSQLite入ってるコンピューターに送っても同じように挙動するの?
それともCSV形式とかに直したりして送らないといけない?
0331NAME IS NULL
垢版 |
2014/02/14(金) 17:18:34.60ID:???
同じバージョンで操作するなら同じだよ
0332NAME IS NULL
垢版 |
2014/02/14(金) 17:22:20.18ID:???
SQLite3どうしなら大丈夫って事だよね?
勿論、3.1.1と3.11.3とかバージョンが大きく違えば
仕様が変わったりでバグがあるかもしれないけれども

ありがと
0334NAME IS NULL
垢版 |
2014/02/14(金) 20:35:54.23ID:???
centOS6使ってるんですが、TKSQLiteってどうやってインストールするんですか?
http://reddog.s35.xrea.com/wiki/TkSQLite.html#download
からTcl scriptとStandalone executable binary (sqlite 2.8.17 / 3.7.14)の
両方をダウンロードしたんですが、後者の方はTKSQLiteってのをダブルクリックしても動きません
前者は、tksqlite.tclってファイルが出来ましたが、中身はシェルスクリプトのようです
$bash tksqlite.tcl
とすればいいのでしょうか?
0335NAME IS NULL
垢版 |
2014/02/14(金) 22:43:56.33ID:???
そのTKSQLiteとやらの作者に聞けばいいと思うよ。

# 「Tcl script」なる物をダウンロードしたのに
# >中身はシェルスクリプトのようです
# なんて言ってるレベルじゃあ、先にLinuxを勉強した方が良いと思うけど。
0336NAME IS NULL
垢版 |
2014/02/15(土) 03:47:59.50ID:???
>>334
後者だけど、URLにlinuxと入ってるのを落としてるよな?
win32とかosxとかの奴を落としてたら動かないのは当然だからな、対応OSが違う

それで動かなきゃ前者という話になるんだが
そのレベルだとTkSQLiteがTcl/Tkで出来ていると言ってもわからなさそうだな
後者で動かないなら素直に諦めとけ
0337NAME IS NULL
垢版 |
2014/02/15(土) 19:02:59.81ID:???
SQLiteにBOM入れたらどうなるの?
0341NAME IS NULL
垢版 |
2014/02/18(火) 00:11:38.74ID:???
CREATE TABLE時にでもいいんだけど、文字コードをUTF-8に指定って出来ないの?
もし出来るならやり方教えてほしいんだけど
0342NAME IS NULL
垢版 |
2014/02/18(火) 00:18:01.82ID:???
ん?
pragma encoding=utf8;
と言うのをCREATE TABLEの前に実行すればいいのかな?
0343NAME IS NULL
垢版 |
2014/02/18(火) 10:28:51.42ID:???
何も指定してないなら基本的にutf8じゃないか?
pragma encodingで確認できるっしょ
あとsqlite側では一切コンバートしてくれないから注意
text指定しようが、blob指定しようがバイト列そのまま格納されるから
0344NAME IS NULL
垢版 |
2014/02/20(木) 16:47:39.61ID:OV/jiJYc
SQLiteってMySQLみたいにユーザ名、パスワードを必要としないから、
基本的に誰でも中身を確認したり、いじったり出来るってことだよね?
0345NAME IS NULL
垢版 |
2014/02/20(木) 17:06:46.66ID:???
そりゃファイルのパーミッションによるだろう
0346NAME IS NULL
垢版 |
2014/02/20(木) 17:10:01.03ID:???
なるほど、SQLiteはパーミッションで制御するのね
0348NAME IS NULL
垢版 |
2014/02/20(木) 17:43:54.31ID:???
いろいろ混乱してるようです
0349NAME IS NULL
垢版 |
2014/02/20(木) 17:45:36.47ID:???
じゃぁどうするんだ?
0350NAME IS NULL
垢版 |
2014/02/20(木) 18:54:36.60ID:???
ファイルが弄れてフォーマットを知ってて連携の整合性を
保てるのであれば。はい。
っと言うことは・・・w
0351NAME IS NULL
垢版 |
2014/02/27(木) 09:22:21.76ID:???
質問させてください。
phpでsqliteを使っています。
select文でソートして取り出す時、descを指定しているのですが空のカラムが先頭に出てきます。
この空のカラムを0のカラムより後に出したいのですが、色々検索して調べてみたら以下でできるような記述がありました。

order by num is null desc, num desc

しかしこの指定では出力結果は変わりませんでした。
そもそも以下を指定しても空の位置が常に先頭に来てしまいます。

order by num is null asc
order by num is null desc

sqliteのバージョンは2.8.17 です。
何が原因なのでしょうか?
他に何か方法などありませんでしょうか?
0352NAME IS NULL
垢版 |
2014/02/27(木) 10:30:25.28ID:???
nullなの?descなら
nullは最後に来るはずだけど。
nullじゃ無くて間違えて空文字入ってるんじゃないの?

空文字なら
order by val <> '' desc, val desc
とかやらないと駄目なんじゃない?
0353NAME IS NULL
垢版 |
2014/02/27(木) 10:49:53.43ID:???
>>351
本当に null なのか?
空文字 (長さ 0 の文字列) じゃないの?
0354NAME IS NULL
垢版 |
2014/02/28(金) 13:33:20.39ID:???
select で where と order by を併用すると構文エラーって言われるんだけど、
条件で絞り込んだselectの結果を並び替えたい場合ってどうするの?
0355NAME IS NULL
垢版 |
2014/02/28(金) 14:10:42.09ID:???
意味不明。
スレ違いだしsqlスレ行って可愛がってもらいなさい
0356NAME IS NULL
垢版 |
2014/03/12(水) 04:32:53.25ID:???
Current Status

Version 3.8.4.1 of SQLite is recommended for all new development.
Upgrading from 3.8.4 is optional. Upgrading from all other versions of SQLite is recommended.
0357NAME IS NULL
垢版 |
2014/03/13(木) 10:39:33.96ID:dPrdAziV
SQLiteをWindow Azureに配置して
ASP.NETで使いたいんですけど、
可能ですか?
0358NAME IS NULL
垢版 |
2014/03/14(金) 04:17:26.54ID:???
>>357
Azure Webサイト上の PHP なら普通に SQLite 使えたけど。
0359NAME IS NULL
垢版 |
2014/03/25(火) 21:16:58.60ID:TOFQ0YWL
SQLite3をwindows8.1のmetroスタイルアプリに、
JavaScriptを用いて利用したいんだけどうまくいかない。

ビルドしたSQLite3.winmdをアプリから参照したし、SQLite3.jsもdefault.htmlにマークアップした。
しかし、default.jsから、
var dbPath = "sqliteファイルのパス";
SQLite3JS.openAsync(dbPath)...
とSQLite3.jsの関数を呼ぶと、
SQLite3.js内の401行辺りで SQLite3.Database.openAsync(dbPath)...が呼ばれる。いつもそこで
クラスが登録されていません
とエラーになる。

だ、誰か 助けて
0360NAME IS NULL
垢版 |
2014/03/27(木) 06:42:20.71ID:???
Current Status

Version 3.8.4.2 of SQLite is recommended for all new development.
Upgrading from all other versions of SQLite is recommended.
0361NAME IS NULL
垢版 |
2014/04/13(日) 22:20:28.42ID:???
threadlocalsとcheck_same_threadオプションはどういった意味があるのでしょうか。

日本語の情報が見つからないためご説明いただけると嬉しいです。
0362NAME IS NULL
垢版 |
2014/04/17(木) 22:27:13.20ID:TYJAEJce
テンポラリデータベースってどこに作成されるのでしょうか?
でもって、こいつの作成場所を明示的に指定できるのでしょうか?

教えてエロイ人
0364NAME IS NULL
垢版 |
2014/04/17(木) 23:25:53.45ID:???
ありがとうこざいます
0365NAME IS NULL
垢版 |
2014/04/23(水) 12:50:32.46ID:???
SQLite Release 3.8.4.3 On 2014-04-03 (3.8.4.3)

Add a one-character fix for a problem that might cause incorrect query results on a query that mixes DISTINCT, GROUP BY in a subquery, and ORDER BY.
Ticket 98825a79ce14.


Current Status

Version 3.8.4.3 of SQLite is recommended for all new development.
Upgrading from all other versions of SQLite is recommended.
0366NAME IS NULL
垢版 |
2014/05/15(木) 16:27:56.47ID:SDSKVU7U
SQLiteでnewid()のような関数を使ってユニークIDを振りたいのですが
どうすればよいでしょうか?

CREATE TABLE "main"."TestTable" (
"a" INTEGER PRIMARY KEY NOT NULL,
"b" INTEGER NOT NULL
);

INSERT INTO TestTable Values ( 5 , newid())

*a はプログラム側がロジックにしたがって決定する
*b はDB側でユニークな値を自動生成してほしい。
0367NAME IS NULL
垢版 |
2014/05/15(木) 18:24:09.78ID:???
integer primary key は明示的に値を設定しなければ勝手に入るのでは
0368NAME IS NULL
垢版 |
2014/05/26(月) 10:48:59.60ID:???
インメモリDBを作り、それを別のプログラムから接続する事は出来ないんでしょうか?
0369NAME IS NULL
垢版 |
2014/06/06(金) 08:30:12.62ID:0qswSBWs
2つ日付カラム(出来事の日、誕生日)があるとした場合、年齢計算はどうやりますか?
0370369
垢版 |
2014/06/06(金) 10:28:21.04ID:???
ごめんなさい、出来ました。
ttp://dara-j.asablo.jp/blog/2007/09/24/1816593
0371NAME IS NULL
垢版 |
2014/06/07(土) 09:51:01.72ID:???
>>366
オートナンバー機能を持っていないから無理

>>368
メモリ共有なんて機能はないから無理

君たち、SQLiteはフリーなローカル軽量DBという点に特化しているのだから
他のDBMSに慣れた人が過剰な要求をするのはNGですがな
ぶっちゃけて言えば、アプリ内データの一時保存手段と考えた方が幸せになれる
0373白バラ十字軍
垢版 |
2014/06/10(火) 15:43:53.50ID:gr7v9uKn
今では殺人事件凶悪事件が起こると創価員かというぐらい
ネットではささやかれる時代になりました。刑務所受刑者の33%は創価員という事実は有名な話ですが、以下を見れば納得ができます

創価員が裁かれる    判決の際 法廷にこだまする「 池 田 先 生 万 歳 !」
◎以下これ以外にまだまだ創価員の犯罪多数あり、書類送検されていないだけであなたの街でも多数すさまじい事件の数が
発生しましたし、まだまだ毎日のように創価員による凶悪事件は発生しているのです!
しかもこれ以外にもTVでも報道された凶悪事件多数あり!。あなたの周りにも潜んでいる。
危険です。危機的状況です。酒鬼薔薇だけではありません。実にたくさんいるのです
あなたの街でも善良な人間のように取り繕い潜んでいるのです。

●宅間守(在日)→大阪 附属池田小学校児童殺傷 創価学会員。大量殺人犯 。8人殺害 15人が重軽傷。悪徳 朝鮮人部落出身。
(悪徳カルト)両親も創価学会員。獄中結婚したが相手の女も創価員。さすが創価員は悪徳な者を好む。あえて結婚する
とは殺人破壊者を賛美、美化、擁護する行為 2004年死刑執行 獄中結婚した女は慰謝料損害賠償払ったのか?被害者に詫びたのか?
宅間は被害者に詫びていない。つまり・・・判決の際 法廷にこだまする「 池 田 先 生 万 歳 !」ということ
日本の犯罪史上、稀に見る大事件
●畠山鈴香 (在日)→秋田県児童連続殺害事件 創価学会員。悪徳。(悪徳カルト)
●斉藤勇太 →JR取手駅前バス無差別殺傷事件 創価学会員。悪徳。(悪徳カルト)
●酒鬼薔薇聖斗→ 東慎一郎(在日)神戸の首切り魔で酒鬼薔薇聖斗 創価学会員。神戸の首切り魔。生首を校門に飾る。悪徳2人殺害。
元在日朝鮮人。両親も創価学会員(悪徳カルト)
●福田孝行(在日)→山口県母子殺害 殺害後屍姦、乳児も殺害 創価学会員。悪徳(悪徳カルト)
●阿部隆 →長野母子バラバラ殺人事件(平成元年)船橋市幼児バラバラ殺人事件 千葉県船橋市の熱心な創価学会員・A・A子さんと長男
のHちゃんが、同じく学会員である夫のA・Tに殺された。動機は生活苦。バラバラにされた死体が聖教新聞に包まれ、長野県の山中に捨
てられていた 悪徳(悪徳カルト)
0374NAME IS NULL
垢版 |
2014/06/10(火) 23:37:18.44ID:???
>>368
出来ます。
データファイルをラムディスクの上に置きましょう。
0375NAME IS NULL
垢版 |
2014/06/11(水) 02:14:52.23ID:???
>>374
それは物理的な置き場がメモリになっただけで"インメモリDB"ではないよね…。
0376NAME IS NULL
垢版 |
2014/06/13(金) 09:17:08.30ID:???
SQLite Release 3.8.5 On 2014-06-04 (3.8.5)

Added support for partial sorting by index.
Enhance the query planner so that it always prefers an index that uses a superset of WHERE clause terms relative to some other index.
Improvements to the automerge command of FTS4 to better control the index size for a full-text index that is subject to a large number of updates.
Added the sqlite3_rtree_query_callback() interface to R-Tree extension
Added new URI query parameters "nolock" and "immutable".
Use less memory by not remembering CHECK constraints on read-only database connections.
Enable the OR optimization for WITHOUT ROWID tables.
Render expressions of the form "x IN (?)" (with a single value in the list on the right-hand side of the IN operator) as if they where "x==?", Similarly optimize "x NOT IN (?)"
Add the ".system" and ".once" commands to the command-line shell.
Added the SQLITE_IOCAP_IMMUTABLE bit to the set of bits that can be returned by the xDeviceCharacteristics method of a VFS.
Added the SQLITE_TESTCTRL_BYTEORDER test control.
0377NAME IS NULL
垢版 |
2014/06/18(水) 11:06:47.42ID:/pFl4NPD
環境:PHP5.4 SQLite3.7

SELECT sample_id FROM user_list ORDER BY RANDOM() LIMIT 3;

としてランダムに3血盾フsample_idを取得できているのですが、
これに除外条件を付け加えたところ機能しません。

SELECT sample_id FROM user_list ORDER BY RANDOM() NOT IN ('1234') LIMIT 3;

こうすると特定の3件のみが返ってきます。
NOT INの使い方に問題があるのだと思いますがどのようにすれば3件のランダム取得をしながら1234だけ除外ということが出来るようになるのでしょうか?
アドバイスいただけると助かります。
0378NAME IS NULL
垢版 |
2014/06/18(水) 11:31:08.68ID:???
何を除外したいの?
WHERE で外せばいいだけでは
0379377
垢版 |
2014/06/18(水) 12:01:03.92ID:/pFl4NPD
>>378
1234という値を外したいと思い「NOT IN ('1234')」というのを付加したのですが
WHEREで外すということでしょうか。
0380NAME IS NULL
垢版 |
2014/06/18(水) 12:20:05.48ID:???
RANDOM() NOT IN ('1234')
だとRANDOM()の結果が'1234'以外は1が返るだけじゃないかな

SELECT sample_id FROM user_list WHERE sample_id NOT IN (1234) ORDER BY RANDOM() LIMIT 3;

こうならん?
0381NAME IS NULL
垢版 |
2014/06/18(水) 23:39:59.17ID:b5gx/YIo
すごく初心者で申し訳ありません。質問です
.txtに入っている|で区切ってある顧客情報をsqlite3を使ってテーブル作りたいです。import
filename table name をsqlite3.exeで実行して、テーブルを入れたデータベースをsqlitebrowser
でみてましたがなにもはいっていません。どうしたらよいでしょうか。。
。お願いします!!!
0382NAME IS NULL
垢版 |
2014/06/18(水) 23:58:31.98ID:???
>>381
質問する時は情報を正確に。
・txtには何が入っている?
・どんなテーブルに格納しようとしている?
・importを実行した時に出たメッセージは?
・sqlitebrowserとやらで出たメッセージは?
0383NAME IS NULL
垢版 |
2014/06/19(木) 10:21:48.77ID:???
sqlite3.exe で .import したんだったら、その場で select * from tablename
してみるといい
0384NAME IS NULL
垢版 |
2014/06/19(木) 12:50:27.04ID:???
sqliteってどのくらいの規模に耐えられますか?
■ このスレッドは過去ログ倉庫に格納されています

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