• ベストアンサー
  • すぐに回答を!

クエリー

お世話になっております。 あるクエリーが解決できなくて困っています。 データベース名:world テーブル名:country, city, countryLanguage 条件: 3つ以上の言語を持っている国と、人口が100万人以上 上の条件が当てはまる、language name, country name, country populationを表示させる。 mysql> select country.Name, countrylanguage.Language, country.Population -> from city, country, countrylanguage -> where (countrylanguage.CountryCode = country.Code) and (country.Populatio n > 100000000) -> order by country.Population DESC でやっても条件に合わずに駄目でした。 3つ以上の言語を持っている国という条件をどのように指定したらいいのか分からずに困っています。 ご教授お願いします。

共感・応援の気持ちを伝えよう!

  • 回答数3
  • 閲覧数57
  • ありがとう数0

質問者が選んだベストアンサー

  • ベストアンサー
  • 回答No.3

(1)3つ以上の言語を持っている国という条件 group byでCountryCodeをグループ化し、3行以上存在するものをhavingで条件指定することで取り出します。 (2)表cityの結合は、この検索では不要です。 (3)人口の条件が、「1億を超えるもの」になってますが? 100万人以上なら、country.Populatio n >= 1000000ですよね? (4)ORDER BYで人口順になってますが、言語の順は不定でいいのでしょうか? サブクエリを使用しているので、MySQL 4.1以降で実行する必要がありますが、下記SQLを試してみてください。 select country.Name, countrylanguage.Language, country.Population from country, countrylanguage where countrylanguage.CountryCode = country.Code and country.Code in(select CountryCode from CountryLanguage group by CountryCode having count(*)>=3) and country.Population >= 1000000 order by country.Population DESC

共感・感謝の気持ちを伝えよう!

関連するQ&A

  • 英語で住所の書き方

    どなたか助けて下さい(;;) 〒123-4567 長崎県 長崎市 北区 花の木 1丁目 10-11 山田 花子 ↑これを、下記の項目にどう当てはめたら良いのか分かりません。 first name: last name: street: city: state: zip code: country: どうぞ宜しくお願い致します!

  • 外国のサイトでの注文

    外国のサイトで、商品を注文しようと思いますが、英語がよくわからないのでお教え願えないでしょうか。 (1)First Name (2)Last Name (3)City (4)Street Address (5)State/Province (6)State/Province (7)Post Code (8)Country すみません、以上7つを入力しなければならないのですが、どのように記入すればよいでしょうか。ちなみに福岡県に住んでます。よろしくお願いします。

  • Oracl[10g] の SQL文について(No.4)

    何度も恐縮です。また、違った事が出てきました。(^^; Oracl[10g] の SQL文について、教えて下さい。 [A]テーブルに [CODE] と [NAME]フィールドがあるとします。 内容は、 A-1 NAME-1 A-2 NAME-2 B-1 NAME-3 と、します。 条件は、[CODE]の左1文字が’A’の物のみを取り出したいのです。 要するに、結果が、 A-1 NAME-1 A-2 NAME-2 と、なる様にする為には、どういうSQL文を書けば良いのでしょうか ? SELECT A.CODE,A.NAME, WHERE LEFT(A.CODE,1)='A' GROUP BY A.CODE,A.NAME ORDER BY A.CODE と、すればエラーになってしまいます。 よろしくお願い致します。

その他の回答 (2)

  • 回答No.2

こんにちわ。 SQL文の having という句をしらべてみてください。 解決できますよ。

共感・感謝の気持ちを伝えよう!

  • 回答No.1
  • webuser
  • ベストアンサー率33% (266/792)

それぞれのテーブルの項目が書かれていないのでなんとも言えませんが、テーブルcityが一切条件に入っていませんね。 それが原因の可能性大です。

共感・感謝の気持ちを伝えよう!

質問者からの補足

すみません、テーブルの項目を書くのを忘れていました。下のような項目になっています。 少なくとも3つの言語を話す国を選択するという条件の作り方がわからないんです。 お手数かけますが、よろしくお願い致します。 city +-------------+----------+ | Field | Type | +-------------+----------+ | ID | int(11) | | Name | char(35) | | CountryCode | char(3) | | District | char(20) | | Population | int(11) | +-------------+----------+ country -------------------------- | Field | Type | +----------------+-------- -------------------------+ | Code | char(3) | | Name | char(52 | | Continent | enum('A rctica','South America') | | Region | char(26 | | SurfaceArea | float(1 | | IndepYear | smallin | | Population | int(11) | | LifeExpectancy | float(3 | | GNP | float(1 | | GNPOld | float(1 | | LocalName | char(45 | | GovernmentForm | char(45 | | HeadOfState | char(60 | | Capital | int(11) | | Code2 | char(2) | CountryLanguage +-------------+--------------- | Field | Type +-------------+--------------- | CountryCode | char(3) | Language | char(30) | IsOfficial | enum('T','F') | Percentage | float(4,1) +-------------+---------------

関連するQ&A

  • 英語での住所の書き方について

    海外の通販を初めて利用しました。 ところが、自分ではちゃんと住所等を書けていたと思っていたのですが 住所が正しくありませんと返信が来てしまいました。 この住所を 〒111-2222 大阪府池田市桐ヶ丘1丁目2-3 田中太郎 下の様に分けて書いて下さいと言っていますが、 どの様に分けていいか分かりません。 first name: last name: street: city: state: zip code: country: 具体的に教えて頂けないでしょうか? よろしくお願いします。

  • 筆記体が読める方…お願い致します。

    こんにちは。 ポストクロッシングを最近始めた者です。 今日、ポストカードが届いたのですが、全然読めなくて困っています。 My name is //. I am ?? you from the city of ??, ??, ?? is a country in ??, ?? along ?? ?? of ?? ?? sea, ?? is the(?) ?? of ??, its ?? city ?? a population(?) of ?? than(?) 500,000 ??. このくらいしか読めませんでした。 (一単語ずつ調べたりしましたが分かりませんでした…) どなたか、すみませんが手助けして下さるとありがたいです。 宜しくお願い致しますm(_ _)m

  • 英文作成お願いします。

    個人輸入をしていて、商品を今の住所ではなく、違う住所に送りたいので、以下の英文 の作成お願いします。 order number の 10043,10402,10469 の発送先を下記の住所に変更してほしい。 First Nam:     masato Last Name:    horihata Phone:    090-2526-○○ Street Line 1:   485-3 tanaka Street Line 2:   ○○○-shi City: ibaraki-ken Zip/Postal Code: 300-○○ Country:  japan また発送は今までと同じでUSPSでお願いしたい。 よろしくお願いします。

  • MYSQLのクエリのデータをテキストエリアにセットしたい。

    いつも拝見し、勉強させていただいております。 MYSQLを使用してメールフォームの入力支援に郵便番号から それぞれ都道府県、市区郡、住所、住所1とテキストエリア内に表示させたいのですがうまく表示されません。 ソースは以下の通りです。 //フォームの箇所のソース <input type="text" name="addNo" value="<?= $inpadd ?>" size="15"> <input type="text" name="address" value = "<?= $ken ?>" size="20"> <input type="text" name="city"value = "<?= $city ?>" size="40"> <input type="text" name="address" value = "<?= $address ?>"size="40"> MYSQLの結果表示のソース //データベースに問い合わせ $query ="select * from ZIP_T where CODE_C='{$addNo}'"; //クエリの結果を返す $result_id = doquery($query,$conn_id); // 結果セットからキー配列(連想配列)へ $ZipCode = mysql_fetch_assoc($result_id); //結果セットを返す。 $inpadd = $ZipCode["CODE_C"]; $ken = $ZipCode["KEN_C"]; $city = $ZipCode["ADD1_C"]; $address = $ZipCode["ADD2_C"]; 以上です。データベースのカラムは郵便番号が”CODE_C” 都道府県が”KEN_C”市町村が"ADD1_C"その他の住所を ”ADD2_C”としています。 何かいいお知恵がございましたらお貸しください。 よろしくお願いいたします。

    • ベストアンサー
    • PHP
  • PHP / MySQL / クエリ実行

    【概要】 PHPからMySQLへのクエリを実行したいのですが、結果が返りません。 【環境】 CentOS5 [PHP5] sakuraインターネット レンタルサーバ スタンダートプランです。 参考:http://www.sakura.ne.jp/rentalserver/matrix.html 【ソース PHP】 ------------------------------------------------------------ $query =  mysql_query(' SET @i := 0; SET @ii := 0; SET @iii := 0; SET @iiii := 0; select `sys_no`,`day`,`counter`,(@iiii := @iiii +1)as `counter2` from (select `sys_no`,`name`,`day`,(@i := @i +1) as `counter` from TBL名 ORDER BY `day` DESC ) as aa where counter BETWEEN (select a.counter from (select `sys_no`,`day`,(@ii := @ii +1) as `counter` from TBL名 ORDER BY day DESC ) as a where sys_no =5) - 1 AND (select a.counter from (select `sys_no`,`day`,(@iii := @iii +1) as `counter` from TBL名 ORDER BY day DESC ) as a where sys_no =5) + 1 '); while ($row = mysql_fetch_array($query)) { 結果取得処理 } ------------------------------------------------------------ ・上記をPHPより実行しますと、「while~」の部分で結果が無いとエラーが返ります。 ・phpMyAdminから直接クエリの部分のみを実行しますと、問題無く結果が返ります。 ・なお、クエリを簡単な一行程度の内容にしますと問題無く実行され、結果が返ります。例:select * from TBL名 ・また、上部にセットしている4つのSETを試しに削除した状態でPHPより実行しますと、結果は返りませんがエラーにはなりません。 以上、アドバイス頂戴できますでしょうか。 よろしくお願い致します。

    • ベストアンサー
    • PHP
  • Oracle8のトップN解析

    質問させていただきます。 Oracle8iの場合、トップN解析ということで select id, name from (select id, name from tmp order by id desc) where rownum <= 3; というSQLを作成してidを前から3つだけ検索できますが、 Oracle8の場合、インラインビューでの[order by]が 無効なので、困っています。 よければ、ほかの方法はないものでしょうか?

  • 個人輸入の英文作成お願いします。

    アメリカより、個人輸入で服を購入しているのですが発送を一時ストップしてほしいという内容で 以下の英文を作成お願いします。 お世話になります。 以下の住所で荷物が一時的に受け取る事ができなくなりました。 First Nam: fu*** Last Name: hori**** Phone: 090-****-1234 Street Line 1: 22-* tanaka Street Line 2: tukuba-shi City: ibaraki-ken Zip/Postal Code:300-1234 Country: japan もし今、発送の準備があるものがあれば以下の住所に変更してほしい。 First Nam: ji** Last Name: na****** Phone: 090-****-1234 Street Line 1: 22-* tanaka Street Line 2: tukuba-shi City: ibaraki-ken Zip/Postal Code:300-1234 Country: japan

  • 日本語に訳せる方よろしくお願いします(´;ω;

    日本語に訳せる方よろしくお願いいたします(´;ω;`) それと、返し方とかわかる方もよろしくお願いいたします。涙 Hi, Thank you for your order. But we are so sorry to inform you that we couldn't ship your order because of the address which is not specfic. Which country are you from? Japan or US? Could you send us the correct information in following form? Name: Country: State/province: City: Street: Zip code: Tel: Pls reply us asap in order to ship your order immedately! Best, Chicnova

  • 電話番号

    大学の出願書類で、書類を英語で埋めなければならないのですが、電話番号を書くところが「Country Code」「Area Code」「Local Code」という3つの欄に分かれていて、どのように記入するのかわかりません。 ネットで検索してみたところ、国番号というものが引っかかったのでおそらくそれを書くのかな、とは思うのですが…。だとすると市外局番以下の番号はどこに? 浅学でお恥ずかしい限りですが、どのように書けば良いのかお教えください。よろしくお願い致します。

  • amazon.com(海外のサイト)で本を代引きで買いたいのですが。。

     海外のアマゾンでしか買えない本があるのですが、クレジットカードは親が駄目だと言うので代引きで買いたいのですが、どうすればよいでしょうか? Full Name: Address Line1: Address Line2: State/Province/Region: ZIP/Postal Code: Country: Phone Number: 名前(Full Name)と郵便番号(ZIP Code)と国(Country)と電話番号(Phone Number)は何を入れればよいのかわかりますが、住所がどこにどういれればよいのかわかりません。そして、どのように届くのかもお教えして頂けますと有難いのですがどうでしょうか?よろしくお願い致します。