![見出し画像](https://assets.st-note.com/production/uploads/images/87521693/rectangle_large_type_2_0af16ac758a5f037bab9f5b926ad28d1.jpeg?width=800)
LibreOffice Base コンボボックスとSQL
コンボボックスを使って選択入力をする方法です。
残念ながら、MS-ACCESSのように、2列表示ができないみたいなので、コード値ではなく値を入力することとします。
あらかじめ以下のテーブルを作っておく
![](https://assets.st-note.com/img/1663967753904-HxGBoqrLir.png)
コンボボックスの属性の「データ」で、「リスト内容の種類」から「Sql」を選ぶ
![](https://assets.st-note.com/img/1663967598986-pGyHPUhgxP.png)
「…」を選択するとSQLコマンドが立ち上がるので、コードにしたいフィールドを選択する。(今回は、Code>2という条件も入れました。)
![](https://assets.st-note.com/img/1663967935044-TEVT2wFchd.png)
以下のSQLを直接打っても大丈夫です。
SELECT "Label", "Code" FROM "C_帰化状況" WHERE "Code" > 2
![](https://assets.st-note.com/img/1663968086172-2PGPywD294.png)
このように選択入力ができます。
MS-ACCESSでは2列表示ができるので、「申請済み、申請中」などの値を見て選択し、実際の入力値は「3,4」などとできるのですが、Baseでは1列しか表示できないので、「3,4」ではそれが何を意味するのか入力者が理解できません。ここも改善されるといいですね。
この記事が気に入ったらサポートをしてみませんか?