たっぴ(パソコン質問掲示板)

ログイン

メニュー
■ トップ
■ 質問する
■ 回答を見る・回答する
■ 参加者のひろば / テーマ別
■ コミュニケーション道場
■ 「たっぴ」の使い方
■ 「たっぴ」のルール・心得

エキスパート トータルランキング
Rank ニックネーム E-Point
1 位 sriver 1372 p
2 位 げんき(^^)/ 810 p
3 位 うにゅ 607 p
4 位 mory 512 p
5 位 saru 510 p
6 位 Clark 481 p
7 位 taknt 474 p
8 位 459 p
9 位 あき◆ 387 p
10 位 おやぢ 366 p
※月間ランキング参加者がありませんでした。



E-Point還元プログラム
E-Point 月間獲得ポイントより回答者様へ現金を還元いたします。

対象還元金額
全員に(E-Point)×20円
支払いは5,000円以上からとなります。
還元金の支払いはご指定銀行口座への振込みとなります。

『マナーの良い質問者』マーク
以下の条件を満たす質問者様には
  『マナーの良い質問者』マーク

が付きます。
  1. 登録していて
  2. 「終了」していない質問がひとつ以下で
  3. 終了した質問で「○○○○○」という言葉の投稿がある
3番目の条件はひらがなです。もうお判りですね。(漢字、カタカナもOKかも。。。)
ぜひマークをGetしてください。









《戻る

No.質問・回答おれい
[73261] PHP文からMySqlクエリを送り、DBに格納したい
OS: Windows XP
ソフトウェア名/バージョン:MySql4.0 & PHP5
ハード機種名/型番:
エラーメッセージなど:エラーなし
その他:

はじめまして、質問させて頂きます。

質問内容は、PHP文から1枚目のテーブル内容をクエリ文を呼び出して2枚目のテーブルにデータを格納したいという単純なものです。
そこで、

$a = mysql_query("select field1 from tbl_1 where genre like 'bbb' group by unique_field;");

while($b= mysql_fetch_array($a)){
$c = $b["field1"];

}

というようにしたのですが、2枚目のテーブルに格納されてくれません。

別の質問板には集計関数を入れていないのにgroup byを使うからまずいとも指摘されました。試しに、count関数やsum関数をいれた文を作ってみたところ、成功しました。
しかし、group byを使わずにunique_field毎のfield1をひっぱりだす方法が思いつきません。

説明が下手ですみません。
説明の意図がつかめない場合は、説明しなおしますので、どうか、ご教授願えませんでしょうか?お願いします。


まっきー   2005年11月29日19:01


[73399] 文章の通り、質問の意味が取れないですね。

2点ほど
目的とするデータがきちんと取れるSQLを投げているのか?

取れているとすると。
2つ目のテーブルに登録するSQLが無いのは省いただけなのか?

group by がいけないと書かれていますが、SQLを直接投げてみて
SQLの構文が正しいことを確認してみては?
こればかりは、DBに入っているデータがこちらでは分りませんので
ご自分で行うしかないでしょう。

ちなみに、重複項目を抜く目的でGroup by を利用することはあります。

草 (未登録)   2005年12月2日10:24


[73400] よくわからんが多分

select field1 from tbl_1 where genre like 'bbb%' group by unique_field

bbb⇒bbb%
じゃないか?
それだとgroup by するまでも無くbbbしかでてこんだろう
草 (未登録)   2005年12月2日10:26


[73406] >集計関数を入れていないのにgroup byを使うからまずいとも指摘されました。試しに、count関数やsum関数をいれた文を作ってみたところ、成功しました。
「group by」の使い方の問題とすると...

>しかし、group byを使わずにunique_field毎のfield1をひっぱりだす方法が思いつきません。
下記のようにしては?

「select field1 from tbl_1 where genre like 'bbb' group by unique_field,field1;」

集計を行う「GROUP BY」句
http://www.atmarkit.co.jp/fnetwork/rensai/sql03/sql1.html

以下は、上記のページからの引用です。
『■「GROUP BY」句の制約
 「SELECT」句には、GROUP BYで指定した列と集計関数のみを指定することが
 できます。
 もし、強制的にUnitPriceを表示したい場合は、UnitPriceをGROUP BYに追加
 します。』

maido (2696)    2005年12月2日13:08


[73668] 良く見たら・・・・


Group By で括るフィールドは、たしかSELECT 句の中に含まれていなければ
ならなかったはず。
DBの種類によって平気なものが有るのかもしれんが・・・

SQLを直接流した結果を公表してもらえれば解析できます。


unique_field ごとに括っても

unique_field =a
field1 =b

というレコードが複数含まれていたら、
大量のレコードが出てくると思うし、
group by の項目がselect に出てこないのが変な感じだ。

select unique_field,field1 from tbl_1 where genre like 'bbb' group by unique_field,field1

こうか?

と言ってももう見ていないか(笑


草   2005年12月8日16:10


( 参照数:1734   日平均:0.3 )
 
〜 回答の受付を終了しました 〜


回答、お礼・報告などメッセージの追加

ニックネーム:

まったく新しい内容の質問、質問者以外の方の質問は、メニューの「質問する」から新たに質問してください。

詳細: 内容を詳しく言うと。。。

※「たっぴ」に登録すると質問にポイントが付けられます。 その他便利な機能も使えます!》新規登録 》Help

※http://.....は自動的にハイパーリンクに変換します。
※<pre></pre>が使用できます。     ※引用は行の先頭に「>」を付けてください。自動的に色が付きます。




利用規約 特定商取引に関する法律に基づく表記 プライバシーポリシー 問合せ