![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 332 Pomógł: 6 Dołączył: 13.01.2005 Ostrzeżenie: (0%) ![]() ![]() |
Czy jest prostsza metoda niż:
? Jeżeli rekord o id=1 jest pusty to wyciągam rekord o id=2. Zastosowanie: Wyciąganie tłumaczeń tekstów (jeżeli nie mamy tekstu po polsku w bazie to wyciągamy angielską wersję). |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 5 Pomógł: 0 Dołączył: 2.12.2010 Ostrzeżenie: (0%) ![]() ![]() |
Ja bym widział inaczej zbudowaną te tabelę.
CREATE TABLE `table1` ( `ID` int(11) NOT NULL AUTO_INCREMENT, `VALUE` text, `PARAM` text, `LANG` enum('pl','en') DEFAULT NULL, PRIMARY KEY (`ID`) ) ENGINE=MyISAM AUTO_INCREMENT=3 DEFAULT CHARSET=utf8; ID VALUE PARAM LANG 1 null window pl 2 window window en wtedy szukając jakiegoś słówka używamy SELECT IFNULL(a.`VALUE`, b.`VALUE`) AS value FROM table1 AS a LEFT JOIN table1 AS b ON a.`PARAM`=b.`PARAM` WHERE a.`LANG`='pl' and b.`LANG` = 'en' and b.`PARAM`='window' dużo można wymyślać ale to zależy od wielu czynników. btw. zmieniłeś zapytanie ![]() |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 14.08.2025 - 17:47 |