我有一个SQLite数据库,它有以下架构:
CREATE TABLE words (word TEXT PRIMARY KEY);
CREATE TABLE lyrics (track_id, mxm_tid INT, word TEXT, count INT, is_test INT, FOREIGN KEY(word) REFERENCES words(word));
CREATE INDEX idx_lyrics1 ON lyrics ('track_id');
CREATE INDEX idx_lyrics2 ON lyrics ('mxm_tid');
CREATE INDEX idx_lyrics3 ON lyrics ('word');
CREATE INDEX idx_lyrics4 ON lyrics ('count');
CREATE INDEX idx_lyrics5 ON lyrics ('is_test');
我想从歌词表中查询整个单词列。如果我跑:
SELECT * FROM lyrics;
结果如下:
TRAAAAV128F421A322|4623710|i|6|0
TRAAAAV128F421A322|4623710|the|4|0
TRAAAAV128F421A322|4623710|you|2|0
...
但是,如果我跑:
SELECT word FROM lyrics;
结果如下所示
&
&
&
...
我对SQLite不太熟悉,所以我对这种行为感到很困惑。由于单词是外键,我考虑过必须加入这些表,但是只要我查询所有内容,它就会起作用,这会很奇怪。
任何建议都表示赞赏。