我正在构建一个网站,我需要检索一些信息。我有这个问题。
$SQL = "SELECT distretto_108, provinca_113, regioni_116, tipologia_pdv_106,
richiesta_ccnl_107, coop_va_109, nome_pdv_110,
indirizzo_pdv_111, localita_112
FROM civicrm_value_informazioni_su_tute_le_schede_p_22 ";
我需要添加其他代码:
WHERE civicrm_event.title_en_US='".addslashes($_GET["titles"])."'
但它不起作用...... 我需要比较让我们说另一个表的id与当前表的id ...怎么做?
提前致谢...
答案 0 :(得分:0)
你应该学习一些关于加入桌子的事情......
不知道两个表之间的关系(简单地说:一个表中的哪个列指向另一个表中的哪个列),但尝试类似的东西(需要修改以满足您的DB结构) - 现在让我们假设两个表都有相关的列名为event_id:
$SQL = "SELECT distretto_108, provinca_113, regioni_116, tipologia_pdv_106,
richiesta_ccnl_107, coop_va_109, nome_pdv_110,
indirizzo_pdv_111, localita_112
FROM civicrm_value_informazioni_su_tute_le_schede_p_22 cvistlsp22
LEFT JOIN civicrm_event ce ON ce.event_id = cvistlsp22.event_id
WHERE ce.title_en_US='".mysql_real_escape_string($_GET["titles"])."'";
civicrm_value_informazioni_su_tute_le_schede_p_22
表名很长,你将无法在其他DBMS(例如ORACLE)中创建一个具有如此长名称的表,所以尽量让它更短,同时还要自我描述... < / p>
如果您想加入表格,他们必须有关系,请在此处详细了解关系及其使用方法:http://net.tutsplus.com/tutorials/databases/sql-for-beginners-part-3-database-relationships/
答案 1 :(得分:0)
您正在查询表中的表civicrm_value_informazioni_su_tute_le_schede_p_22中的数据,而您要添加的where子句引用表civicrm_event。您需要在from子句中添加此新表,并使用一些公共密钥在两个表之间进行连接。示例如下:
$SQL = "
SELECT distretto_108, provinca_113, regioni_116, tipologia_pdv_106, richiesta_ccnl_107, coop_va_109, nome_pdv_110, indirizzo_pdv_111, localita_112
FROM civicrm_value_informazioni_su_tute_le_schede_p_22
JOIN civicrm_event ON civicrm_value_informazioni_su_tute_le_schede_p_22.ID_PK = civicrm_event.ID_FK
WHERE civicrm_event.title_en_US='".addslashes($_GET["titles"])
";
您需要将ID_PK和ID_FK替换为将表绑定在一起的相关主键和外键。
请注意不建议使用类似的查询参数。有关详细说明,请阅读PHP Documentation here。