• Opret dig
  • Glemt adgangskode

User account menu

  • Artikler
  • Forside
  • Forum
  • Nyheder
  • Log ind
Hjem
LinuxIN.dk

Snak med

Opret dig!

Af peque | 25.01.2019 09:30

[LØST] MySQL opslag

Hjælp generelt
Hejsa gruppe
Jeg har et lille spørgsmål omkring MySQL

Jeg har 2 tabeller
Users og vessels


tbl 1
+-----+------+------------+---------------------+
| uid | name | lastname | timestamp |
+-----+------+------------+---------------------+
tbl 2 vessels
+----+---------+-----------------+-----+---------+------+--------+
| id | imo | name | sid | snr | uid | active |
+----+---------+-----------------+-----+---------+------+--------+

Mit sql kald ser således ud PT - men der mangler noget
SELECT users.uid,users.name,users.lastname,users.timestamp,vessels.name from users,vessels where users.state='X' AND users.uid=vessels.uid;

Som det ses her ønsker jeg
uid name lastname og timestamp fra users tabellen - samtidigt med jeg ønsker at få navnet fra vessels tabellen hvor mit username står i uid.
Dert fungerer reelt set fint så længe der er noget i vessels.uid - Men hvis det er tomt eller NULL kommer kommer der empty resultset - Hvilket er logisk sålænge vesselsd.uid er tomt - så er der ikke noget resultat .

Kan man på nogen måde acceptere et tomt felt - eller skrive sig ud af - at feltet vessels.uid kunne være tomt - og derfor ikke kunne bruges med i sammenligningen!

Alt således at jeg får users.uid users.name users.lastname users timestamp samt vessels.name HVIS users.uid=vessels.uid

Håber det giver lidt mening
  • Log ind eller opret dig for at tilføje kommentarer

Kommentarer4

# 1

7 år 1 måned siden

Permalink

Indsendt af ejvindh den 25. januar 2019 kl. 10:20

Permalink

Duer dette?
SELECT

Duer dette?
SELECT users.uid,users.name,users.lastname,users.timestamp,vessels.name
from users,vessels
where users.state='X' AND
(users.uid=vessels.uid OR vessels.uid IS NULL);

  • Log ind eller opret dig for at tilføje kommentarer

# 2

7 år 1 måned siden

Permalink

Indsendt af ejvindh den 25. januar 2019 kl. 10:27

Permalink

Njaah....nok næppe. For så

Njaah....nok næppe. For så ved databasen jo ikke, hvad den skal joine... Den skal jo have at vide HVILKET vessels.name den skal koble sammen med user-data.

Jeg tror du vil komme længere med at tilrette strukturen på din database. Normalt plejer man vel også at sige, at en tabel-id skal være required -- typisk ved at sætte den til autoincrement. Ellers får du noget bøvl med at joine tabeller.
  • Log ind eller opret dig for at tilføje kommentarer

# 3

7 år 1 måned siden

Permalink

Indsendt af marlar den 25. januar 2019 kl. 14:47

Permalink

Prøv med LEFT JOINSELECT

Prøv med LEFT JOIN

SELECT
users.uid,
users.name,
users.lastname,
users.timestamp,
vessels.name
FROM
users
LEFT JOIN
vessels ON users.uid = vessels.uid
WHERE
users.state = 'X'

  • Log ind eller opret dig for at tilføje kommentarer

# 4

7 år 1 måned siden

Permalink

Indsendt af peque den 26. januar 2019 kl. 07:14

Permalink

@Marlar
Det var lige den

@Marlar

Det var lige den jeg manglende - Så det var selve syntaksen jeg havde en lille fejl i !
  • Log ind eller opret dig for at tilføje kommentarer

Svar søges

Det engang så elskede PCLinuxOS er tilbage - og det er stadig en fantastisk Windows erstatning 0
KDE Plasma 6.6 skrivebordsmiljø udgivet 0
youtube-tui: Nyd YouTube fra terminalen som en professionel 0
GRUB 2.14 introducerer understøttelse af EROFS, forbedringer til Btrfs og LVM 0
KDE Plasma 6.6 tilføjer en funktion, som brugerne har spurgt efter i evigheder 0

Seneste aktivitet

rsync og filsystem 6
Mousam er en detaljeret desktop vejrapp til Linux 1
Hjælp til Handbrake - ingen dk-undertekster 1
BigLinux 4
luckyBackup 2
GIMP 30
Pinegrow på Debian 13 ? 4
Openmediavault 1
E-mail blues 9
Driver til min scanner? 5
Printer Epson ET-2865 problem 16
Sudo 7
Thunderbird filvedligeholdelse 2
Debian 13.3.0 8
Linux Mint 22.3 - hvornår opdatere? 10
Canon-printer: Jeg savner "Ink-Toner Level"-meddelelse 10
billede af nuværende installation 2
mapper 4
LinuxIn live 9
Linux Debian på ekstern HD 4

© 2026 Linuxin og de respektive skribenter

Oprettet og drevet af nørder siden 2004 !