2015-06-07 70 views
0

我需要這個SQL查詢援助(我想學習)

幫助,我有表世界(名稱,大陸,資金),我不知道如何做到這一點:

  1. 找到首都是國家的國家加上「城市」。
  2. 找到兩個由兩個「O」字符分隔的國家。
  3. 查找名稱中包含三個或更多個a的國家/地區。
  4. 查找首都和名稱,其中首都是國家名稱的延伸。

非常感謝臉紅

+4

我們不會做你的功課! SELECT,WHERE,LIKE等是一個好的開始! – jarlh

+0

omg ...它不是作業...它是從sqlzoo.net和我做了很多練習......但不知道如何做到這一點......所以謝謝你的幫助!你真的很有幫助 –

+1

你表現得越努力,你就會得到更好的答案!例如,添加表格定義,樣本數據,預期結果,以及您嘗試過的查詢 - 並描述他們的錯誤等等。 – jarlh

回答

0

在頁面與您的問題,在這裏你的第一個問題是,12號出現。這是他們給你入手:

SELECT name, concat(name, 'town') 
FROM world 
WHERE name LIKE '%ina%' 

另外,右邊的文本區域上面,他們提到the concat function。對於問題12,其中資本是國家加「城」字的名稱,你的where子句是:

where capital = concat(name, ' City') 

注意單詞市前的前導空格。這應該讓你繼續其餘的人。

+0

非常感謝:)我可能會問你另一件事,你不知道我怎麼可以包括到querry例如,如果我想找到3個字母相同的字母 - (找到在名稱中有三個或更多「a」的國家)。 –

+0

@PatrikKatona。 。 。你可以問另一件事,但評論不是正確的地方(除了澄清和可能的一些非常小的問題)。作爲問題提出問題的適當位置。而且,如果丹回答了這個問題並且幫助了你,那麼你應該接受答案。 –

0
1. SELECT name FROM world WHERE capital=concat(name,' city'); 

2. SELECT name FROM world WHERE name LIKE '%o__o%'; 

4. SELECT name,mid(capital,LENGTH(name)+1) rep 
     FROM world 
      WHERE capital LIKE concat(name,'_%'); 

    one more method for ques number 4 using REPLACE SQL FUNCTION: OR 

    SELECT name,replace(capital,name,'') rep 
      FROM world 
        WHERE capital LIKE concat(name,'_%') 
0
1.SELECT name FROM world WHERE capital LIKE concat(name, '%','City'); 

2.SELECT name FROM world WHERE name LIKE '%o__o%'; 

3.SELECT name FROM world WHERE name LIKE '%a%a%a%'; 

4.SELECT name, capital FROM world WHERE capital LIKE concat(name, '_%'); 
0

這工作

SELECT 
    name, capital 
FROM 
    world 
WHERE 
    capital LIKE concat('%', name, '%') OR capital LIKE concat('%', name, '%') 

有沒有人有一個更雄辯的方式來做到這一點?