ホームページ  >  記事  >  バックエンド開発  >  phpmysqlについて質問があります

phpmysqlについて質問があります

WBOY
WBOYオリジナル
2016-06-13 12:05:55794ブラウズ

php mysqlについて質問したいです
テーブル内のデータをクエリするには、条件はuid in (1,2,3)です。その後、uid=1、2、または 3 を満たすすべてのクエリを実行できます。
条件が満たされるたびにアイテムを 1 つだけ取得するにはどうすればよいですか?
たとえば、uid 1、2、および 3 の項目が複数ある場合、SQL クエリでは、uid 1 の最初の項目、uid 2 の最初の項目、および uid 3 の最初の項目のみがクエリされます。
------解決策----------------------
まず、ID が必要です。 data、uid

は、それぞれ uid 1、2、および 3 を持つ項目の数をクエリします: (テーブル名が「user」で、テーブル内に id と uid の 2 つのフィールドしかないと仮定します)

<br />select id,count(uid) from user group by uid having uid=1 or uid=2 or uid =3;<br />


uid 1 の最初の項目をクエリします:

<br />select * from user where uid=1 limit 1;<br />

------解決策----- ----- ----------
クエリ結果セットをグループ化し、1 つの
------解決策------ -- ----------
select * from tbl_name a <br /> where (select count(*) from tbl_name where uid=a.uid and id<a.id) = 1 and uid in (1,2,3)

------解決策-- - ----
各条件に対して 1 つの条件のみを取得します:
select * from tt where uid in (1,2,3) group by uid ;
----- -解決策--------------------
select a.* from table a where 1> (select count(1) from table b where a . id = b.id と a.id > b.id ) と (1,2,3)
の a.uid -------解決策-------- ----------
ID によるテーブル グループから上位 1 * を選択
------解決策--------- --- --------
グループ化が可能

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。