簡體   English   中英

MySQL基於許多列值選擇行

[英]mysql select row based in many column values

我有這樣的桌子

id alias_word language  original
1    word1      es      changed_word
2    word1      en      orig_word
3    word1      fr      changed_word
4    word2      de      other_original

假設參考列language = es

如何使查詢有結果都行alias_word列= word1original列是不同於original的列,其中language欄= ES

預期結果:

2 word1 en orig_word

我已經嘗試過了,結果是空的

SELECT * FROM words WHERE alias_word = 'word1' AND original <> original

嘗試使用自我聯接:

SELECT w2.*
FROM words w1
INNER JOIN words w2
    ON w1.alias_word = w2.alias_word AND
       w1.original <> w2.original
WHERE
    w1.language = 'es';

演示

AND original <> original將始終不返回任何內容。 我不太了解原始列的操作方式,但是我想您不想在原始列中使用“原始”一詞:

SELECT * 
FROM words 
WHERE alias_word = 'word1' 
    AND original <> 'original'
    AND language = 'es'

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM