Php SQLSTATE[23000]:完整性约束冲突:1052使用与laravel的联接
我有两个表,我正试图Php SQLSTATE[23000]:完整性约束冲突:1052使用与laravel的联接,php,mysql,sql,laravel,join,Php,Mysql,Sql,Laravel,Join,我有两个表,我正试图连接它们,以获得所有引用的表,但出现错误,但我不确定我做错了哪一部分,有人能帮我一下吗 我有这张桌子买票 public function up() { Schema::create('tickets', function (Blueprint $table) { $table->increments('id'); $table->string('ticketNumber')->nullable(true)->un
连接它们,以获得所有引用的表,但出现错误,但我不确定我做错了哪一部分,有人能帮我一下吗
我有这张桌子买票
public function up()
{
Schema::create('tickets', function (Blueprint $table) {
$table->increments('id');
$table->string('ticketNumber')->nullable(true)->unique();
$table->boolean('is_deleted')->default(false);
$table->timestamps();
});
}
我有一个表,用于保存票据的注释ticket\u notes
,我使用ticketNumber
而不是id
public function up()
{
Schema::defaultStringLength(191);
Schema::create('ticket_notes', function (Blueprint $table) {
$table->string('ticketNumber');
$table->foreign('ticketNumber')->references('ticketNumber')->on('tickets');
$table->increments('id');
$table->string('rloc', 50);
$table->boolean('is_deleted')->default(false);
$table->timestamps();
});
}
我正在使用querybuilder
来执行查询,而不是雄辩的关系
DB::table('tickets')->where([
'ticketNumber' => 12345,
'is_deleted' => false,
])
->join('ticket_notes', 'tickets.ticketNumber', '=', 'ticket_notes.ticketNumber')
->select('tickets.*');
我得到了这个错误
SQLSTATE[23000]:完整性约束冲突:where子句中的1052列'ticketNumber'不明确(SQL:select
tickets*from
ticketsinternal join
ticket\u noteson
ticketNumber=/code>ticket\u noteswhere(
ticketNumber=12345并且
已删除=0))
任何人都可以给我一个全新的视角,我在加入时哪里做错了?
提前感谢您的建议/帮助。由于加入,共有两列名为ticketNumber。请指定所需的一列。
'tickets.ticketNumber'=>12345
DB::table('tickets')->where([
'tickets.ticketNumber' => 12345,
'is_deleted' => false,
])
->join('ticket_notes', 'tickets.ticketNumber', '=',
'ticket_notes.ticketNumber')
->select('tickets.*');
啊!thx thx,真的需要一双新的眼睛。我知道这不在问题中,你的回答解决了它。但是如果你能帮我一把的话,这只是另一个简单的问题。我在查询后意识到,如果有两个音符,这会给我两个数组。有没有可能将它们合并并返回一个对象,而将音符作为数组?@Dora请在新帖子中提出更多问题,而不是评论。这是一个常见问题解答。请始终搜索错误消息和问题/问题/目标的许多清晰、简洁和具体的版本/措辞,包括或不包括您的特定字符串/名称和“site:stackoverflow.com”&标记并阅读许多答案。在搜索中添加您发现的相关关键字。如果您找不到答案,然后发布,使用1个变体搜索作为标签的标题和关键字。请参阅文本上方的向下投票箭头鼠标。如果您有不重复的代码问题要发布,请阅读并执行。