我有四张 table
CREATE TABLE IF NOT EXISTS Englishword (WordId int NOT NULL,WordName varchar(100) NOT NULL,PRIMARY KEY (WordId))
CREATE TABLE IF NOT EXISTS MeaningInAmharicforEnglish (MeaningidA int(11) NOT NULL,WordIdA int NOT NULL,MeaningNameA varchar(50) NOT NULL,WordclassA varchar (50) NOT NULL,PRIMARY KEY (MeaningidA),FOREIGN KEY (WordIdA) REFERENCES Englishword(WordId) ON UPDATE CASCADE ON DELETE CASCADE) ENGINE = InnoDB CHARACTER SET utf8 COLLATE utf8_general_ci
CREATE TABLE IF NOT EXISTS MeaningInTigrgnaforEnglish (MeaningidT int(11) NOT NULL,WordIdT int NOT NULL,MeaningNameT varchar(50) NOT NULL,WordclassT varchar (50) NOT NULL,PRIMARY KEY (MeaningidT),FOREIGN KEY (WordIdT) REFERENCES Englishword(WordId) ON UPDATE CASCADE ON DELETE CASCADE) ENGINE = InnoDB CHARACTER SET utf8 COLLATE utf8_general_ci
CREATE TABLE IF NOT EXISTS MeaningInEnglishforEnglish (MeaningidE int(11) NOT NULL,WordIdE int NOT NULL,MeaningNameE varchar(100) NOT NULL,WordclassE varchar (50) NOT NULL,PRIMARY KEY (MeaningidE),FOREIGN KEY (WordIdE) REFERENCES Englishword(WordId) ON UPDATE CASCADE ON DELETE CASCADE)
我有一个数据 英文单词
1 go
我有一个数据 英语对英语的含义
1 1 hello verb
2 1 hello noun
我有一个数据 英语阿姆哈拉语含义
1 1 ራቀ verb
2 1 ራቀ noun
我有一个数据 Tigrgna 英语的含义
1 1 ሄደ verb
2 1 ሄደ noun
我使用了以下查询
SELECT WordId,
WordName,WordclassE,MeaningidE,MeaningNameE,WordclassA,MeaningidA,MeaningNameA,WordclassT,MeaningidT,MeaningNameT
FROM Englishword AS E, MeaningInEnglishforEnglish AS EM, MeaningInAmharicforEnglish AS AE, MeaningInTigrgnaforEnglish AS TE
WHERE (E.WordId = EM.WordIdE)
AND (E.WordId = AE.WordIdA)
AND (E.WordId = TE.WordIdT)
这给了我以下结果:
WordId WordName WordclassE MeaningidE MeaningNameE WordclassA MeaningidA
1 go verb 1 hello verb 1
1 go verb 1 hello verb 1
1 go verb 1 hello verb 1
1 go verb 1 hello verb 1
1 go verb 2 hello verb 2
1 go verb 2 hello verb 2
1 go verb 2 hello verb 2
1 go verb 2 hello verb 2
其他字段也根据表中的值重复,我希望得到这样的结果
WordId WordName MeaningidE wordclass MeaningNameE WordclassA MeaningidA MeaningNameA
1 go 1 verb hello verb 1 ራቀ
Null Null 2 verb hello verb 2 ራቀ
其余字段也是如此
h如何编写一个查询,通过删除重复行来显示所需的查询?
最佳答案
如果您可以格式化您的答案,那就太好了。从目前的情况来看,没有多少人能够理解。
我想您的解决方案是对您要获取重复项的字段使用GROUP BY column_name
。
下次尝试尽可能清晰地格式化您的问题。
关于mysql - 如何从 mysql 中的内连接查询中删除重复行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19824470/