【发布时间】:2011-09-15 01:21:51
【问题描述】:
使用 PHP 和 mySQL。我有 4 个表格,AgencyInfo、TypeCodes、PrimarySta 和 MutualAid。 AgencyInfo 具有唯一 ID 作为主要 ID。 Typecodes 具有唯一的 TID 作为主要。 PrimarySta 和 MutualAid 将 ID 和 TID 作为它们的主键。
我正在尝试创建一个记录集,该记录集将根据来自机构信息的 ID 为我提供来自 PrimarySta 和 MutualAid 的记录。 TypeCodes 中有 47 条静态记录。 PrimarySta 和 MutualAid 每个 ID 将有 47 个条目(类型代码)。 PrimarySta 有 ID、TID 和 12 个 INT 字段,MutualAid 有相同的 ID、TID 和 12 个 INT 字段加上第 13 个字段(文本)称为 notes。
我正在使用 while 循环来单步执行数据。 ID 通过 POST 或 SESSION 传递。
Page Layout
Primary Station
TypeCode P1 P2 P3 P4 P5 P6 P7 P8 P9 P10 P11 P12
Mutual Aid
M1 M2 M3 M4 M5 M6 M7 M8 M9 M10 M11 M12
Notes(M13)
这会重复 47 次,每个 typecode 一次。我使用 Dreamweaver 来组装我的初始 SQL 查询,但根据我的研究,它似乎没有使用最好的语法。我的以下代码仅使用 2 个表,TypeCodes 和 PrimarySta,但是当我在 MutualAid 中添加时,出现了问题。
$colname_Display = $_SESSION['sta_id']; }
mysql_select_db($database_DB, $MyDB);
$query_Display = sprintf("SELECT * FROM primarysta, typecodes, mutualaid
WHERE primarysta.tid, mutualaid.tid = typecodes.tid AND primarysta.id = %s",
GetSQLValueString($colname_Display, "int"));
我猜我的问题在于primarysta.tid, mutualaid.tid = typecodes.tid 行。我见过使用 INNER JOIN,但似乎无法正确使用语法。
谁能帮助我正确的语法?
谢谢!
【问题讨论】:
标签: php mysql dreamweaver