【緊急】腕に覚えのあるプログラマー来てくれ!!

1ひろゆき代理2006/03/09(木) 18:59:22ID:QGdZvsUO
>鯖まとめ
>旧鯖 http://info.2ch.net/webwerewolf/index.htm
>新鯖 http://info.2ch.net/jinro/index.php
>新新 http://info.2ch.net/jinro2/jinro_index.htm

本スレ
http://live22x.2ch.net/test/read.cgi/news/1141871872/

要約:
現在ひろゆきが人狼プロジェクトでCGI等のテストをしているわけだが
いろいろぐだぐだなわけだ
そこでこの板のみんなにいろいろ改造してほしいわけだ

2nobodyさん2006/03/09(木) 19:01:07ID:xa6y59HU
ごめんねν速民バカばっかりでごめんね(´・ω・`)

3nobodyさん2006/03/09(木) 19:01:49ID:C0OBrQez
age

4nobodyさんNGNG
2げっと

5nobodyさん2006/03/09(木) 19:05:07ID:QGdZvsUO
過疎板だなw

6nobodyさん2006/03/09(木) 20:53:08ID:???
久しぶり新しい話題のスレだね。

7ひろゆきNGNG
http://f45.aaa.livedoor.jp/~netfilms/
ファイルはここですー

8nobodyさん2006/03/09(木) 20:57:52ID:r4Q+iI7I
狐にお願いしろよ

9nobodyさん2006/03/09(木) 21:19:48ID:???
お、みんなで弄るのか
モリタポとか絡むならひ(ryとその仲間の妖弧で弄るのかと思ってた
まあ、そっちだけ自力で弄ればいいのか、、、

10nobodyさん2006/03/09(木) 21:33:04ID:???
webprog板でやれよボケって書こうと思ったらここwebprog板だった

11nobodyさん2006/03/09(木) 22:12:56ID:fEiFeGWn
>>10
ワロウタ

たのむぜみんな

13nobodyさん2006/03/10(金) 02:51:16ID:???
▼ game_veiw.php
193:print("<a href=\"user_manager?room_no=$room_no\"><strong>[住民登録]</strong></a>");
↑は↓
  print("<a href=\"user_manager.php?room_no=$room_no\"><strong>[住民登録]</strong></a>");
でFA?

14nobodyさんNGNG
>>13
あいあい。必須です。

15nobodyさんNGNG
http://info.2ch.net/jinro/watch_log.txt
old_log.phpをちょこっと改造しただけですが、
過去ログみるやつです。

>>15
ひろゆきが名無しで発言はじめてみた

口癖の「あいあい。」とbeですぐわかったけど

17nobodyさん2006/03/10(金) 04:39:45ID:???
元ネタ知らないから、何をしたいのかさっぱりわかんない。

18nobodyさん2006/03/10(金) 04:53:49ID:???
>>14-15
ありがとです。
ところでところで、過去ログみるやつのSQLデータ
ちょこっとだけ恵んでほしいかも。。無理でしょか??

19ひろゆきのビジョン(私見で抜粋)2006/03/10(金) 04:55:35ID:???
http://live22x.2ch.net/test/read.cgi/news/1141784985/351+373+385+393

351 名前:番組の途中ですが名無しです[] 投稿日:2006/03/08(水) 13:02:03.79 ID:expAqeMd0
人狼って別に新しいことでもないと思うんだけど、なんでひろゆきが始めたんだろ。

373 名前:ひろゆき[] 投稿日:2006/03/08(水) 13:09:20.35 ID:2Q5xWps60 ?#
>>351
勝者が賞金もらえたりランキングつけたりしたいなぁと。

ちょっとしたゲームのGMが職業になるってのもありだと思うんだけどなぁ。

ゴールデン街のバーテンさんなんで1日に10人ぐらいの相手してるだけで、
暮らしてたりするわけで。
MMOみたいに何万人を相手にするんじゃなくて、
ちょっとした人数でちょっと楽しいってものが、
乱立したほうが選択肢としては面白いと思うんだけどなぁ。

385 名前:番組の途中ですが名無しです[] 投稿日:2006/03/08(水) 13:12:30.31 ID:expAqeMd0
>>373
ちょっと面白そう。
TV番組のチーターとか昔のヘキサゴンを一般人が賞金付きでやれたらいいなあとか思ってたけど
そんな感じ?

393 名前:ひろゆき[] 投稿日:2006/03/08(水) 13:14:36.64 ID:2Q5xWps60 ?#
>>385
人狼はあくまで1例なんだけど、ちょっとしたゲームを数人とやりたい。
でも、yahooゲームとかだと、緊張感もないし、
すぐに切断されるので、ある程度緊張感があって、
ホスト役の人がいるところのほうが楽しい。

っていうプレイヤーと、ある程度ホスト役をするだけで、
生活の糧になるってのをマッチングさせると面白いかなぁと。

20現在までの経過(私見で抜粋)2006/03/10(金) 05:02:55ID:???
http://live22x.2ch.net/test/read.cgi/news/1141871872/421+660+690+692+947

421 名前:ひろゆき[] 投稿日:2006/03/09(木) 17:44:21.72 ID:yUANQFXM0 ?#
いまのところ、3種類のスクリプトがあって、
3種類なりに一長一短で、各々の長所を調べた上で、
どれをベースにして長所を移行するかってのを考えてるですよ。

660 名前:ひろゆき[] 投稿日:2006/03/09(木) 22:05:09.01 ID:yUANQFXM0 ?#
perl版のはディレクトリロックだから、やっぱり負荷には向いてない予感。
690 名前:ひろゆき[] 投稿日:2006/03/09(木) 22:07:34.25 ID:yUANQFXM0 ?#
高負荷になる>ロックが頻繁になる>ロックの削除が間に合わなくなる。
>ますますリロードする>ますますロックが削除されない。

以下ループ

692 名前:ひろゆき[] 投稿日:2006/03/09(木) 22:07:57.20 ID:yUANQFXM0 ?#
ベースをphp版にしないとやっぱりだめっぽい。

947 名前:ひろゆき[] 投稿日:2006/03/10(金) 01:54:30.80 ID:jCCNow5z0 ?#
perlのほうは壊れるので、phpを使いやすくすることにしたおいらなのですよ。

21nobodyさんNGNG
特定のテーブルのdumpの仕方がわかってないおいらです。。

22現在までの経過(私見でまとめ)2006/03/10(金) 05:09:36ID:8amhdBES
というわけでν速民に煽られながら↓を一人で弄ってる方がいらっしゃいます
これはとても危険な状況です、どなたか助けを、、、

【テスト中URL】
汝は人狼なりや?〜テスト〜
http://info.2ch.net/jinro/index.php

【使ってるファイル】
汝は人狼なりや?のPHP+MySQL移植版(from ふたば)
http://f45.aaa.livedoor.jp/~netfilms/

23nobodyさん2006/03/10(金) 05:21:18ID:???
phpはマルチバイト実行でこけるぐらい無知なんだけど、
DBにまるなげならロックうんぬん関係ないよね?違ってる?

24関連スレ・過去スレ2006/03/10(金) 05:23:07ID:8amhdBES
【ニュース速報板現行スレ】
【首都警】 人狼テスト中 その4 【セクト】
http://live22x.2ch.net/test/read.cgi/news/1141929220/

【ニュース速報板関連過去スレ】
人狼のテストをするので、暇な人よろしくよろしく。  (part1)
http://live22x.2ch.net/test/read.cgi/news/1141784985/
【紅い眼鏡】 人狼テスト中 【ケロちゃん】  (part2)
http://live22x.2ch.net/test/read.cgi/news/1141807114/
【首都警】 人狼テスト中 その3 【セクト】
http://live22x.2ch.net/test/read.cgi/news/1141871872/

ニュー速の現行スレはすぐ消化されてしまうと思われます
なんかわかりにくく、いろいろ漏れてると思いますが
とりあえず以上(>>19+20+22)がニュー速での流れっぽいものです
どなたかフォローよろしく

25nobodyさんNGNG
>>23
テーブルロックを使ってるみたいですが、
競合でデータ飛んだりってのはないです。

26nobodyさん2006/03/10(金) 05:36:46ID:???
システムは判ったけど、賞金つけるって無理じゃないかな。
アクセスが減る時間帯とかで、八百長が簡単にできそう。
ただの遊びでとどめるのが無難では?

27nobodyさん2006/03/10(金) 05:42:57ID:???
>>21
出力見つけてみました。↓

<?php
//▼ talkテーブルcsv出力
header("Content-Type: application/octet-stream");
header("Content-Disposition: attachment; filename=talk".date(ymd).".csv");
//サーバー名--localhost ユーザー名--root パスワード--pass
$dbHandle = mysql_connect("localhost","root","pass");
if ($dbHandle == False) {
print ("can not connect db\n");
exit;
}
//db名
$db = "jinro";
$sql = "select * from talk";
$rs = mysql_db_query($db,$sql);
$fields = mysql_num_fields($rs);
$rows = mysql_num_rows($rs);
for($i=0;$i<$rows;$i++){
for($j=0;$j < $fields;$j++){
print(mysql_result($rs,$i,$j));
if ($j < $fields - 1)
print(",");
}
print("\n");
}
?>

28nobodyさん2006/03/10(金) 05:44:45ID:???
↑つづき
ほしい度30%ぐらいなで、他のほにゃららややこしい理由でダメならぜんぜんOKです。

▼ インスパイア元
http://ns1.php.gr.jp/pipermail/php-users/2003-December/019800.html

2927-282006/03/10(金) 06:09:37ID:???
今、すごいことに気づきました!
csv自分で作ってインポートすればイイっぽい。
ごめんなさい。お騒がせしました。。

30nobodyさん2006/03/10(金) 06:21:39ID:???
ただのdumpなら$ mysqldump [OPTIONS] データベース名 [テーブル名]だけど、
SQLコマンドでdumpってあったっけ?

31nobodyさんNGNG
mysqldumpでテーブル指定できたんすかぁ。

32nobodyさんNGNG
うは、なんか文字化けしまくりです。。

33nobodyさん2006/03/10(金) 06:44:32ID:???
出てくるデータはEUCっぽいから、クライアントに合わせてエンコしないと

34nobodyさんNGNG
mysqldumpでエンコード指定ってできますっけ?

35nobodyさんNGNG
フレームから呼び出すと時間表示が出るのですが、
「サーバとローカルPCの時間ズレ(ラグ含):210秒」
http://info.2ch.net/jinro/test/frame.html

ファイルを直接見ると、javascriptがうまく動かないようです。
http://info.2ch.net/jinro/test/game_play.htm

何が原因かわかりますでしょうかー?

36nobodyさん2006/03/10(金) 07:17:25ID:???
>>34
一度ファイルに書き出して、読むときに弄るぐらいしか。
でもそれなら、順番に読みだしながらエンコしていったほうが速いかも?
こちらWin機のみなので、シェルのコード指定できるかどうかは知らないです。

37nobodyさん2006/03/10(金) 07:23:33ID:???
>>35
1つめは保留で2つ目
コード内で沢山ある parent.frames['up'] これ。
フレーム名「up」を指定してあるから、
該当するフレーム名を持ったフレームがないとエラーになります。

38nobodyさん2006/03/10(金) 07:37:46ID:???
>>35の1つめ
function realtime_before_output()
{
php_now = new Date(2006,2,10,7,01,44);
local_now = new Date();
diff_sec = Math.floor( (local_now - php_now) / 1000);
document.realtime_form.realtime_output.value = "サーバとローカルPCの時間ズレ(ラグ含):" + diff_sec + "秒";
}
これ見る限りでは
local_now = new Date();  でローカルの時間
php_now = new Date(2006,2,10,7,01,44);  でCGIの出力した情報から計算した時間
で、時間は1/1000秒で返すので1000で割るんだけど、
これだけだとローカルが早いか鯖が遅いかぐらいしかわかりません。
phpがどのタイミングで時間を取っているかが問題かも。
出力を終えるギリギリで時間だしてるとは思うけど・・・

39nobodyさん2006/03/10(金) 07:51:31ID:???
ざっとコード追ってみたけど、わかる範囲では特におかしいところはないかと。

40nobodyさん2006/03/10(金) 07:54:09ID:???
perl版のwwwolfって、ファイルロック関連がアクセス多い時にダメになるらしいけど、
これを解決する方法ってのは無いのかね。

41nobodyさん2006/03/10(金) 08:20:07ID:???
perl版ってどこだろ・・

42nobodyさん2006/03/10(金) 08:23:48ID:???
ttp://park1.wakwak.com/~aa1/wwwolf/
ここからDLできるよ。

43nobodyさん2006/03/10(金) 08:27:35ID:???
見つけたけど、ファイルロック何もやってないよ?

44nobodyさん2006/03/10(金) 08:29:59ID:???
462 名前:ひろゆき[] 投稿日:2006/03/09(木) 17:57:26.49 ID:yUANQFXM0 ?#
こんな感じらしい。

>>442
元々、暴走癖があってちょいと無理して直したので、
データ消える可能性があるです。

463 名前:ひろゆき[] 投稿日:2006/03/09(木) 17:58:17.07 ID:yUANQFXM0 ?#
>>449
負荷が高いだけならいいんですが、
負荷が高いときに挙動が変になるのが1です。

470 名前:ひろゆき[] 投稿日:2006/03/09(木) 18:01:50.83 ID:yUANQFXM0 ?#
ディレクトリ生成でロックをしてるので、
ユーザーが1秒以内にアクセスし続けると永遠にロックしっぱなしみたいになったりするです。
ロック処理をするスクリプトというのは高負荷に絶えられるアルゴリズムでなかったりします。
あと、1のスクリプトだと、GMですら誰が投票してないかわからないのです。
3は投票してない人がわかるです。

45nobodyさん2006/03/10(金) 08:31:44ID:???
間違えてひろゆきの発言に「こんな感じらしい」って書いちゃったけどまあいいやw

46nobodyさん2006/03/10(金) 08:41:34ID:???
cgi実行開始しょっぱなからロックかけないといけないものなんですか?これ。
常にファイルに書き込む処理が存在するようには見えないけど。
他にもファイルをすぐ閉じる工夫とかしてないし、
ちゃんと整理してflockで十分なような・・・

47nobodyさんNGNG
とりあえず、upがついてる関数をはずしてみたらうまくいきました。
http://info.2ch.net/jinro/test/game_play2.htm

どうもですー。

48nobodyさん2006/03/10(金) 08:47:20ID:???
はーい

49nobodyさん2006/03/10(金) 09:08:35ID:???
>>46
perlかじった程度なのであまりわからないけど、sub disp_msgの辺りとか?
どうせ一気に出力するんだから、最初にまとめて全部読み込んでしまって、
1行ずつ抜き出して処理して吐き出すバッファに格納していく感じにすると、
ましになりそうって感じなのかな。

50nobodyさん2006/03/10(金) 09:16:53ID:???
ですね。
ゲーム系のCGIだと、メモリ犠牲にしてでも、ファイル解放させないと。
実際ファイルサイズがどれだけ膨らむか知りませんけど、

フェイズごとにファイル分けるとか、
データサイズ決めてアドレスへ直接読みにいくとか、
いくらでも軽量化の方法は・・・

51nobodyさん2006/03/10(金) 09:54:58ID:???
なるほどー。
ちょっと試してみた。
こんな感じの処理でいいのかな。
sub disp_msg{
〜ちょっとだけど省略〜

my @buffer;
my $logline;
open(IN, $file_log);
while (<IN>) { push(@buffer,$_); }
close(IN);
$log_line = @buffer;
while (@buffer) {
 $wk_msgwriteflg = 0;
 @wk_logdata = split(/\{\}/, shift(@buffer));
 〜以下略〜
}

52nobodyさん2006/03/10(金) 10:15:08ID:???
他に、ifの入れこが多すぎるので、
ifで分岐してからループまわした方が速い。
while () {
if () {
if () { ・・・よりも

if () {
while () {}
}
if () {
while () {}
}
・・・として
whileの中でnext連発してさっさとlastで抜けた方が速い。
でもって、展開するものがないならシングルクオートにするとちょびっと速い。
ダブルクオートの中で展開無しでエスケープ文字乱発では意味がない。

53nobodyさん2006/03/10(金) 10:22:52ID:???
なるへそー。
積み重ねで結構違ってくるって事ね。
という事はmyとかもどんどん設定してった方がいいか。
たしかlocalはmyとかグローバル変数より遅いって見た気がするから、その辺も要修正か。

負荷の面で結構いい勉強になりそうだな。

54nobodyさん2006/03/10(金) 10:31:46ID:???
使い捨ての変数はできるだけブロックの中で終わるようにする。
とりあえずuse strict;でも動くように心がける。
マッチしない条件が多いループをまわすとき、
パターンマッチする前に2度手間だけど先にindexで判断したほうが速いとか。

55nobodyさん2006/03/10(金) 10:41:22ID:???
use strict;はどの処理がどの名前空間にあるのかの把握が大変っぽそうなので
オレには厳しそうw
ただ、出来るだけmy使うように心がけるように気をつけねば。

>マッチしない条件が多いループをまわすとき〜
後で条件追加するとかの修正がわかりづらかったり面倒そうだけど、
そっちの方が負荷的にはかなり良さそうだね。
ただ、この辺まで弄ったらかなり大掛かりな改造になりそうな予感。
whileとforがたくさんあるから呼び出しをいかに減らすかでかなり変わってきそうだなぁ。

565942006/03/10(金) 11:33:40ID:0Au2Ffzr
バグとコンパイルエラーの違いを教えて下さい。お願いします。

57nobodyさんNGNG
コンパイルの意味がわかってるのであれば、、、
バグでコンパイルができなくなるとコンパイルエラー。
バグが原因でコンパイルエラーは現象ですね。

585942006/03/10(金) 11:58:11ID:0Au2Ffzr
>nobodyさん
ありがとうございます。
バグがある=コンパイルエラーって解釈でOKですか?

59nobodyさん2006/03/10(金) 12:01:47ID:???
ソースコードを機械語に翻訳できないのがコンパイルエラー
バグは想定していない挙動をすること。
バグっててもコンパイルは成功することもありますね。

60nobodyさん2006/03/10(金) 12:02:58ID:???
>>58 否

61nobodyさんNGNG
さらに言うと、コンパイルしない言語もあったりするので、、

62nobodyさん2006/03/10(金) 12:18:48ID:???
コンパイルできない原因はバグである。
コンパイル後実行できるが想定外の動きはバグである(仕様と言い張る場合もある)。
コンパイルしないインタプリタ言語(JavaScriptとかPerlとかPHPとか)で実行できない原因はバグである。
インタプリタ言語で想定外の動きはバグである(仕様と言い張る場合もある)

で、わかるかな・・・説明力無いや。

63みずき ◆WnmizUKIg6 NGNG
7 名前:あぼ〜ん[あぼ〜ん] 投稿日:2006/03/09(木) 20:56:49 ID:あぼ〜ん
あぼ〜ん

64nobodyさん2006/03/10(金) 12:47:08ID:???
BEのプロフで遠まわしに宣伝ですかそうですか。

65nobodyさん2006/03/10(金) 14:07:35ID:???
beのプロフでの宣伝は禁止されてないしー

66nobodyさん2006/03/10(金) 15:24:27ID:???
PHPならできるけどPerlは・・・ごめんなさい

67nobodyさん2006/03/10(金) 16:44:21ID:???
>>7
参照渡しはやめろといっぱい怒られた
でマニュアルでsscanfみたらちゃんと参照渡しにする必要があると書いてある

68nobodyさん2006/03/10(金) 19:54:33ID:Fu+U56m/
ニュー速現行スレ

【特機隊】 人狼テスト中 5村目 【プロテクトギア】
http://live22x.2ch.net/test/read.cgi/news/1141986358/

69nobodyさん2006/03/10(金) 22:21:27ID:???
コンパイルエラーは言語の文法的にあってるかどうか
バグは仕様と違う動きをするプログラム(文法としてはあってる)に潜むエラー
くらいの解釈で良いと思うです

70nobodyさん2006/03/11(土) 03:31:36ID:???
ttp://up.spawn.jp/file/up13517.jpg
誰かが作ってる?作品

71nobodyさん2006/03/11(土) 21:22:12ID:???
>>15
ゴールドの帯のところ消したのGJ!!
ブツ、わん、ひそ。で見えなくしてのどして?どして??

72nobodyさん2006/03/11(土) 21:33:13ID:???
日本語でおk

73nobodyさんNGNG
SELECT uname, handle_name, profile , user_id, count(*) from users group by user_id

こんな感じのsqlなのですが、同一のuser_idの中でprofileやunameがいろいろある場合には、
profileやunameに入る値を指定することは可能なんでしょうかー?



74nobodyさん2006/03/12(日) 06:59:18ID:???
>>73
なんだそのSQL

75nobodyさんNGNG
省略してますよ。

76nobodyさん2006/03/12(日) 08:14:07ID:???
>>73
INSERT INTO new_table1 ( uname, handle_name, profile, user_id, row_count, )
SELECT Max(uname), Max(handle_name), Max(profile), user_id, Count(*)
FROM users
GROUP BY user_id;

↑作ってみました。
でもでも、これだと(uname/handle_name/profile)文字列の最大値だけになっちゃう。。

77nobodyさん2006/03/12(日) 08:20:55ID:???
わ、row_count, の後ろの
, ←これいらないのです。。

78nobodyさんNGNG
おぉ、そこにも関数いれることができるんですね。

maxではなく、order by timeみたいに、最新のものを拾うようにするのは
難しいんでしょうか?

79nobodyさん2006/03/12(日) 20:49:18ID:???
自信なさげに、つ SELECT a.uname, a.handle_name, a.profile, a.user_id, MAX(b.f_time)
FROM t_users a INNER JOIN t_users b
ON a.f_time = b.f_time
GROUP BY b.user_id

80nobodyさんNGNG
うーん、やっぱりMAX(b.f_time) の数字だけ新しくなっちゃいますね。

81nobodyさんNGNG
諦めてwhileの中でもう一回SQLを呼ぶようにしてみました。

82nobodyさん2006/03/13(月) 10:32:24ID:???
>>80
何がしたいのかはっきり書けば、それに応じたSQLがだせるが、
後出しで仕様を追加すると相手にされなくなる。

83nobodyさん2006/03/13(月) 12:10:01ID:???
>82
ひろ(ryだし

>>81
常に最新の監視をしたいなら、監視専用ファイルに書き出す処理を増やせば楽になれるかも。
いちいちDB弄るより負荷へりそうだし。

84nobodyさんNGNG
>>82

win_lose ='w'の多い順にユーザーを並べたいのですね。
http://info.2ch.net/jinro/game_ranking.php

85nobodyさんNGNG
結果は最新のものじゃなくて、1時間に一回とかでも
いいといえば、いいんですが、
1回のSQLでやる方法があるんだったら、後学のために知りたいなぁ、と。
>>83

86nobodyさん2006/03/13(月) 12:58:28ID:???
>>84
order by [カラム名] descってことではなく?

87nobodyさん2006/03/13(月) 18:25:44ID:???
最新timeのuname(time8桁として)
SELECT SUBSTR(MAX(CONCAT(time,uname),9) AS uname,user_id, count(*) AS cnt
from users
group by user_id

88872006/03/13(月) 18:53:26ID:???
まちがえっち
SELECT SUBSTRING(MAX(CONCAT(time,uname),9) AS uname,user_id, count(*) AS cnt
from users
group by user_id

89nobodyさん2006/03/13(月) 18:58:44ID:???
MySQLじゃ独自関数は作れないのか。

90nobodyさん2006/03/13(月) 19:01:42ID:???
ストアドのこと?

91nobodyさん2006/03/13(月) 22:54:42ID:???
機能追加して、つ SELECT a.uname, a.handle_name, a.profile, a.user_id, COUNT(*) AS f_win, MAX(b.f_time) AS time
FROM t_users a INNER JOIN t_users b
ON a.f_time = b.f_time
GROUP BY b.user_id
ORDER BY f_win DESC

92nobodyさん2006/03/13(月) 23:40:27ID:???
返事待たずに次々出しても意味ないっしょ

93nobodyさん2006/03/14(火) 00:12:48ID:???
次々?

94nobodyさん2006/03/14(火) 00:15:17ID:???
このスレの質問者はひ(ryだけ

95nobodyさん2006/03/14(火) 00:24:18ID:???
>>88>>89じゃないの?

96nobodyさん2006/03/14(火) 03:26:54ID:???
うわー、勘違いしてたみたい。。
>>88ごめんね、ごめんね。

97nobodyさん2006/03/14(火) 11:10:24ID:???
>>89
作れるよ。Stored ProcedureじゃなくてFunctionという機能。

98nobodyさんNGNG
SUBSTR(MAX(CONCAT(time,uname),9)
おぉ、、こんな手があるんすかぁ。

99nobodyさんNGNG
groupでまとめちゃうと、whereって使えなくなるんですよね。。

100nobodyさん2006/03/14(火) 13:03:33ID:???
havingは?

101nobodyさんNGNG
havingの使い方がいまいちわかってません。
having win_lose ='w'とかやるとエラーでるですよ。

102nobodyさん2006/03/14(火) 13:25:50ID:???
何をgroupにしたの?

103nobodyさん2006/03/14(火) 13:28:58ID:???
と言うか、何がしたいの?

104nobodyさんNGNG
>>84に書いたとおりで、win_lose ='w'の人をカウントしたいのですね。

105nobodyさん2006/03/14(火) 13:40:45ID:???
テーブル構造分からないけど

select user_id, count(user_id)
from users
where win_lose = 'w'
group by user_id
order by count(user_id) desc

な感じじゃダメなも?

106nobodyさんNGNG
>>73-
に繋がるわけです。

107nobodyさん2006/03/14(火) 16:49:48ID:???
uniqueなkeyってどれなの?

108nobodyさん2006/03/14(火) 16:51:26ID:???
ごめん、primary keyの間違い

109nobodyさん2006/03/14(火) 19:09:09ID:???
>>106
だから >>73「同一のuser_idの中でprofileやunameがいろいろある場合には、
profileやunameに入る値を指定することは可能なんでしょうかー?」
の「指定」って言ってる条件はなんなん?

user_id,profile,uname,win_lose,time
1,aho,baka,w,2006-03-14 19:00:00
1,roli,hiroyu(ry,w,2006-03-14 16:00:00
1,hoge,piyo,w,2006-03-12 11:00:00
のどれがほしいのよ

110nobodyさんNGNG
timeの最新のやつです。

111nobodyさん2006/03/14(火) 20:25:15ID:???
奈良、88でできるんじゃね?
SELECT
user_id,
SUBSTRING(MAX(CONCAT(time,profile),9) AS profile,
SUBSTRING(MAX(CONCAT(time,uname),9) AS uname,
MAX(time) AS time,
COUNT(*) AS cnt
FROM users
WHERE win_lose = 'w'
GROUP BY user_id

でどうよ。

112882006/03/14(火) 20:28:10ID:???
>>111はtime8桁だった
DATETIMEだったら桁位置変えてね
ORDER BYも忘れてた^^;

113nobodyさんNGNG
それが、timeにあたる値が、1からのauto incrimentなので桁数が可変だったんですよ。。

114nobodyさん2006/03/15(水) 02:13:00ID:???
>>113
ちと考えればできるつーに
SUBSTRING( MAX( CONCAT(LPAD(time,10,'0'),uname) ), 11) AS uname,

115nobodyさんNGNG
おぉ、LPADなんて関数があるんすか。

116nobodyさん2006/03/15(水) 03:29:52ID:???
WebProgのお約束だから言っとくね



マニュアル嫁
http://dev.mysql.com/doc/refman/4.1/ja/string-functions.html

117nobodyさんNGNG
いやはや、どもども。

どうも最新の結果が出てないっぽいのですね。
SELECT max(room_no) ,SUBSTRING( MAX( CONCAT(LPAD(room_no,10,'0'),profile) ), 11) AS profile,
be_userid ,count(*) as winning , SUBSTRING( MAX( CONCAT(LPAD(room_no,10,'0'),uname) ), 11) AS uname
FROM `user_entry` where `win_lose` = "w" group by be_userid order by winning DESC LIMIT 20;

SUBSTRING( MAX( CONCAT(LPAD(room_no,10,'0'),profile) ), 11) AS profile
の部分のroom_noがMAXでないからかと思ったのですが、
エラーがでちゃうんですね。

SELECT max(room_no) ,SUBSTRING( MAX( CONCAT(LPAD(max(room_no),10,'0'),profile) ), 11) AS profile,
be_userid ,count(*) as winning , SUBSTRING( MAX( CONCAT(LPAD(room_no,10,'0'),uname) ), 11) AS uname
FROM `user_entry` where `win_lose` = "w" group by be_userid order by winning DESC LIMIT 20;
ERROR 1111 (HY000): Invalid use of group function


118nobodyさん2006/03/15(水) 04:40:35ID:???
元のコード読んでないけど、監視用のフラグかなんかを保存するカラム追加したらダメなの?

119nobodyさん2006/03/15(水) 04:49:29ID:???
>>117
MAX(room_no)だとGROUPされた中のMAXと不定なprofileがくっつくのでエラーでなくてもだめぽい
GROUPされた中の一番大きいroom_no+profileを取得してるんだけどね

>どうも最新の結果が出てないっぽいのですね。
先のやつでSUBSTRINGを取ってどのroom_noが取得されているか調べてみたらどう?てか調べてみた?

マニュアルにまんま例があった
http://dev.mysql.com/doc/refman/4.1/ja/example-maximum-column-group-row.html

120nobodyさんNGNG
監視用のフラグといいますと?

SUBSTRINGを取って原因を把握してみました。
whileループのときは、where `win_lose` = "w"をしてなかったんで、
wでもlでも最新のプロフィールを返していたようです。
というわけで、仕様としては上記でOKだったようです。

マニュアルにまったく同じことをやってる人がいたんですねぇ、、

「ただし、MAX と CONCAT を使用した、非効率的な手段を使用する必要があります。」
素直にテンポラリーテーブルを作るほうが効率がいいみたいですね。

121nobodyさん2006/03/15(水) 05:39:23ID:???
>>120
工エエェェ(´д`)ェェエエ工工
いっかいPHPくだ質でもいって質問の仕方覚えて恋

テンポラリがいいか非効率でも関数ですませるかは元のテーブルの件数やインデックス
なんかにもよると思うよ
メモリーにでもテンポラリが作れればいいのかもしれないが

122nobodyさん2006/03/15(水) 05:58:29ID:???
文字列をゴリゴリ処理するなら、多少面倒でもPerlで組んだ方が楽なんだよなぁ・・・速いし・・・

123nobodyさん2006/03/15(水) 06:15:58ID:???
>>117
ノシ
select a.uname, a.handle_name, a.profile, a.be_userid, a.win_lose, count(a.win_lose) as w_kazu, max(b.room_no) as new_room
from user_entry a inner join user_entry b on a.room_no = b.room_no
group by b.be_userid having a.win_lose='w' order by w_kazu desc

124参加者募集中!2006/03/15(水) 23:15:48ID:cWKpq76B
株式@2ch
★★★自動売買ソフトを作ろうぜ★★★ Part3
http://live19.2ch.net/test/read.cgi/stock/1141718486/l50

125nobodyさん2006/03/15(水) 23:17:57ID:???
>124
金のないヒキに無縁の話です

126nobodyさん2006/03/15(水) 23:19:50ID:cWKpq76B
>>125
システム完成させてPC働かせて金持ちになろうぜ!

★★★自動売買ソフトを作ろうぜ★★★ Part3
http://live19.2ch.net/test/read.cgi/stock/1141718486/l50

127nobodyさん2006/03/15(水) 23:26:25ID:???
金より仕事が欲しい。
仕事を認めてくれる上司が欲しい。

128nobodyさん2006/03/16(木) 03:45:36ID:???
>>1
いちいち覚えてなんかねーよw

129nobodyさんNGNG
どうもですー>123さん

130nobodyさん2006/03/17(金) 07:27:14ID:???
ひろゆきが真面目に動いてて嬉しいんだが、とりあえず鯖の時計を合わせてほしい…

131nobodyさん2006/03/17(金) 07:51:26ID:???
ニワンゴどうなったのやら

132nobodyさん2006/03/24(金) 09:32:57ID:???

133nobodyさん2006/03/26(日) 01:11:47ID:???
ひろゆきどんひろゆきどん
同一IPが同時に1つの村に存在しないようにしてほしい、要するに多重禁止
あと村の上限数を設定して欲しい、乱立すると困る

134nobodyさん2006/03/29(水) 09:19:35ID:???

135nobodyさん2006/04/05(水) 02:25:10ID:???
無念
友達
法則発動


この辺の文字が文字化けするんだけどなんでよ?

136nobodyさん2006/04/06(木) 04:32:59ID:???
>>135
どういう文章で出てきたかの方が気になってしかたないです。友達はともかく。

137nobodyさん2006/12/15(金) 18:45:25ID:???
>>135
別に化けてないですけど

138nobodyさん2007/02/11(日) 17:18:01ID:UqZVZIaT
エラーが出て入れねえ

139nobodyさん2007/02/16(金) 05:06:18ID:masZTrFY
FORTRAN77できる人いませんか?
お願いがあります。。

140nobodyさん2007/02/16(金) 13:57:03ID:7eoa/RCZ
いた違いだろ >>139

141nobodyさん2007/02/20(火) 05:25:25ID:VMSdVaF4
【ネット】ドワンゴ、2chねらーから人材募集 専用スレで求人広告
http://news22.2ch.net/test/read.cgi/newsplus/1171874937/

142nobodyさん2007/02/20(火) 07:03:15ID:???
【心の】旦那には絶対言えない過去4【奥に】既婚女性板
http://human6.2ch.net/test/read.cgi/ms/1168957905/

48 名前:可愛い奥様[sage] 投稿日:2007/02/04(日) 19:39:27 ID:b/0RSFnH0
結婚前に子供を2回オロシタことがあるのと、煙草をやめていないこと
お腹の赤が旦那の子かどうか微妙なこと

今の旦那と結婚して2年目、現在妊娠中(8ヶ月)
子供ができたってわかってからは何しても耐えるし、家事もしなくてよくなった。
一度、どこまで言ったら怒るのか試したけど、旦那・旦那の実家・仕事
生い立ち・SEX・趣味・お腹の赤、いろいろ文句言ってみたけど意地になって
耐えてた。でも目つきが悪かったから、その目つきで赤が死んだり障害が
あったりしたらお前のせいだ!って言ったら土下座してた。

旦那の財布を見たら心療内科の診察券があったから、どうやら薬で耐えてる
みたい。それもムカついたからやめさしたけど。
これで、私が子供をオロシタ経験者なんて知ったらどうなるんだろう?
ついでにお腹の赤の顔がまったく似てなかったらどうしよう。
殴っても耐えるし…ばれる前に離婚したいって言葉を引き出さないとマジでやばい。

59 名前:可愛い奥様[] 投稿日:2007/02/04(日) 22:00:10 ID:3Z4niqV20
息子は旦那の父親(銀行家)の子供

83 名前:可愛い奥様[] 投稿日:2007/02/06(火) 07:46:34 ID:rlNYiksj0
結婚してから、旦那以外で10人以上の男性と浮気したこと。

92 名前:可愛い奥様[] 投稿日:2007/02/09(金) 23:46:04 ID:QRXcETQYO
セクキャバでバイト経験あり。援交しまくり時代もあり。ヤッた数は100人くらい。
私バツイチで今の旦那には元夫の浮気が原因で離婚したの。とか言ったけどほんとは逆。
好きな人できて夫捨ててのりかえた。浮気しまくりだった。

143電脳プリオン2011/11/11(金) 21:18:08.54ID:????2BP(1960)
人狼プロジェクトって今どうなってるの?

144nobodyさん2013/04/13(土) 12:45:45.17ID:Uz9Yz0J4
さあ?

145nobodyさん2013/04/14(日) 00:12:39.81ID:n+jRC3Rs
◎じゃあのさん来た◎

230:以下、名無しにかわりましてVIPがお送りします[]
2013/04/13(土) 23:42:55.05 ID:DLhfuF/M0
じゃあ、俺がおもしろショー代わりに開いてやんよwww
これから神奈川の九条の会の賛同者たちを順番に晒してこうと思うんだwww
名案だろお?www

--- 以下スレ情報 ---
高岡さんがフジ韓流ゴリ押し批判したら干されたのでウジテレビ凸
http://hayabusa.2ch.net/test/read.cgi/news4vip/1365850484/

146エシュロンなど2013/06/01(土) 01:12:33.55ID:???
長年、嫌がらせをされています。
工作員 エージェント ネイサン シークレット・ガバメント 最上位首謀者 で検索。

147nobodyさん2013/08/10(土) NY:AN:NY.ANID:ymd4PZ+n
ミニブログサイト『Croudia』がレートリミット無制限のAPIを公開
http://croudia.co.jp/NR20130731.html

148nobodyさん2015/07/30(木) 17:34:10.76ID:???
フーターズコンテストジャパンで二位だったSerinaが、
黒人に輪姦されてる動画が流出したようですね。
鮮明だし最後は狂ったように泣きながらイキまくってる。
ちんこたった。
http://subject24.xyz/black025.jpg

新着レスの表示
レスを投稿する