1

2 つの mysql テーブルがあります

マイタブ

  1. ID
  2. ユーザーコード
  3. tab_id
  4. フィッド
  5. タブリスト ID

タブ

  1. tab_id
  2. 題名
  3. ユーザーコード
  4. access_type
  5. 質問

どちらのテーブルも主キーとして tab_id を持ち、同じ値を使用します。タブテーブルとaccess_type = 1で同じtab_idを持つmytabsテーブルのデータをリストしたい.タブからレコードをリストしたくないそのタブにaccess_type 1がある場合、クエリはタブからのみ検証する必要があります。リストする必要があります

出来ますか?私がしようとしているのは、何も返されていないということです。

 $mysql = "select  mytabs.*, tabs.* FROM mytabs, tabs  where mytabs.usercode='$usercode' and (mytabs.fid IS NULL || mytabs.fid='0') and tabs.access_type = '1' order by mytabs.tablistid asc"
4

2 に答える 2

2

使用できますINNER JOIN

select * from tabs INNER JOIN myTabs ON tabs.tab_id = myTabs.tab_id

where句に他の条件を追加します。

そして、INNER JOIN が行うことは、結合条件に一致する両方のテーブルから少なくとも 1 つの行がある場合にのみ行を返すことです。

于 2013-04-27T04:36:48.597 に答える
1

このクエリを使用

SELECT * FROM Shortcut s
INNER JOIN Tabs t
ON s.tab_id=t.tab_id
WHERE t.access_type=1 AND t.usercode = '$usercode'
于 2013-04-27T04:35:55.790 に答える