webForumDet fria alternativet

mySQL Left Join, unikt värde från massor

Databaser & SQL

1 svar · 380 visningar · startad av K++

Medlem sedan juli 2002171 inlägg
Frågan#1
Tabell_A
################
# id # atext    #
##########
# 1  # namn1 #
# 2  # namn2 #  
# 3  # namn3 # 
##########

Tabell_B
#########################
# id # aid # b_on # btext #
#########################
# 1  # 3 # 0       # d       #
# 2  # 3 # 1       # e       #
# 3  # 2 # 1       # f       #
# 4  # 2 # 0       # g       #
# 5  # 1 # 1       # h       #
#########################

Vill ha resultatet
#######################
# id # atext #  btext  #
#######################
# 1  # namn1 # h      #
# 2  # namn2 # f       #
# 3  # namn3 # e      #
#######################

Jag vill ha ut namn från tabell A och btext från tabell B där Tabell B's b_on är lika med 1. (Finns bara ett unikt värde för bon per aid).

Jag tänkte mig att det skulle vara något så här

SELECT Tabell_A.*
FROM Tabell_A
LEFT JOIN ( SELECT btext FROM Tabell_B WHERE b_on = '1') ON ( Tabell_A.id = Tabell_B.id )

Men det fungerar inte! Skulle vara tacksam för hjälp!

Medlem sedan dec. 20025 483 inlägg
#2
select a.id
     , a.atext
     , b.btext
  from tabell_a a
left
  join tabell_b b
    on a.id = b.aid
 where b.b_on = 1
261 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
123 ms — deklarationer (db)
0 ms — hämta statistik (cache)
132 ms — hämta tråd, inlägg och bilagor (db)
126 ms — ändringar (db)