作者热门文章
- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
这是我的表格的样子:
CREATE TABLE pics(
id INTEGER PRIMARY KEY AUTOINCREMENT,
name TEXT,
page INTEGER,
w INTEGER,
h INTEGER,
FOREIGN KEY(page) REFERENCES pages(id) ON DELETE CASCADE,
UNIQUE(name, page)
);
CREATE INDEX "myidx" ON "pics"("page"); # is this needed?
所以 UNIQUE(name, page)
应该创建一个索引。但是这个索引足以进行仅涉及 page
字段的快速查询吗?就像选择一组“图片”WHERE page = ?
。或 JOIN pages.id ON pics.page
?或者我应该为页面字段创建另一个索引 (myidx)?
最佳答案
如前所述,您将需要其他 myidx
索引,因为您的 UNIQUE
索引首先指定了 name
。换句话说,它可以用于查询:
姓名
名称
和页面
page
单独。您的另一个选择是重新排序 UNIQUE
索引并将 page
列放在第一位。然后它可以用于仅page
查询,但将与仅name
查询不兼容。
关于sql - 来自复合键的索引是否足够?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18084430/
对于我的问题,我找不到更好的措辞。 在我的应用程序中的某个时刻,我设置了一些非常密集的动画。问题是,在高端设备上,动画运行流畅且赏心悦目。另一方面,我测试过的一台低端设备在制作动画时表现非常糟糕。 试
我正在修补 OTP 模块 ( yubico_pam ),并尝试访问管理员选择的控制标志(例如必需,足够, ETC)。 有什么想法吗?这是否可行(无需解析文件)? 最佳答案 无法在 API 中查询此信息
我有一些为 Linux 编写的 C 代码,依赖于套接字和 arpa/inet.h 以及 libusb.h,我想在 MinGW 下为 Windows 编译它。 (请注意,当前项目只有一个非常简单的 Ma
我是一名优秀的程序员,十分优秀!