杂货关系 sql 个数据库

Grocery relation sql databases

我用 grocery-crud 做一个简单的 SQL select

$crud->set_table('lista_ab');
$crud->set_relation('id_ab','lista_ab_term','Expire');

问题是它没有建立 'id_ab'

的关系

我的数据库看起来

CREATE TABLE `lista_ab` (
  `id_ab` int(10) NOT NULL,
  `Subname` varchar(255) DEFAULT NULL,
  `Name` varchar(255) DEFAULT NULL,
  `Inregistrat` date DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

CREATE TABLE `lista_ab_term` (
  `ID` int(10) NOT NULL,
  `id_ab` int(10) DEFAULT NULL,
  `Expire` date DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

最后我想提取 Subname 和 Expire。

您无法创建下拉列表并显示第一个 table 的字段名称:Subname,但您可以从另一个 table 和语法真的很简单。 在第 3 个字段中,您将看到符号 { 和 }。因此,例如:

$crud->set_relation('id_ab','lista_ab_term','{Expire} - {ID}');

您可以使用这样的连接查询来获得预期结果:

SELECT t1.Subname, t2.Expire FROM lista_ab t1 LEFT JOIN lista_ab_term t2 ON t1.id_ab = t2.id_ab

或者在 Codeigniter 中

$this->db->select('lista_ab.Subname, 
                   lista_ab_term.Expire');
$this->db->from('lista_ab');
$this->db->join('lista_ab_term', 'lista_ab.id_ab= lista_ab_term.id_ab');
$q = $this->db->get();