1

ユーザーが今まで使用していたすべてのIPを取得しようとしています。

"SELECT * FROM `logfeeds` WHERE uid=3"

単純なクエリですべての IP が得られますが、各 IP を 1 回だけ取得する必要があります。

ログフィード
ここに画像の説明を入力

クエリが各 IP を uid ごとに 1 回だけ返すようにします。

スクリーンショットには id = 23 と id = 29 の両方がありますが、id = 23 と id = 29 は同じ IP を持っているため、id = 23 のみを表示する必要があります。

4

6 に答える 6

1

次のクエリを使用します。

"SELECT * FROM `logfeeds` WHERE uid=3 GROUP BY ip"

これはきっとあなたのために働くでしょう。

于 2013-04-16T11:56:13.087 に答える
1

個別に使用:

mysqlドキュメントから:

DISTINCT は、結果セットからの重複行の削除を指定します。

SELECT distinct ip FROM logfeeds WHERE uid=3;
于 2013-04-16T11:55:40.617 に答える
0

これを試して:

"SELECT Distinct(ip),timestamp FROM `logfeeds` WHERE uid=3"
于 2013-04-16T11:57:44.960 に答える
0

個別のステートメントを試す必要があります

SELECT DISTINCT(ipcolumn) FROM logfeeds....

詳細: http://www.w3schools.com/sql/sql_distinct.asp

于 2013-04-16T11:55:56.493 に答える
0

idこれは、ステップでtimestamp増加し、すべての列が必要であることを前提として
います(使用しましたSELECT *

SELECT
   MIN(id), uid, ip, MIN(timestamp)
FROM
   logfeeds
WHERE
   uid=3
GROUP BY
   uid, ip
于 2013-04-16T11:55:35.647 に答える